1.静态化为html本地文件,你怎么更新呢?
2.如果route 吧item/{id}.html指向你的action,那如何访问静态html文件呢?
1.你这个是静态化之后就不要更新了么。
2.1.action 判断当前request.filepath本地对应文件是否存在,不存在静态化,存在读取返还
2.2.拦截http 404错误,判断当前route是不是你指定的这个规则,是就到action执行静态化,action返回html文件流。route不用配置
2.3.全站手动静态化,就不存在这个问题了
1更新文件的时候会自动删除对应的静态页,从而从新。
2.3不倾向于手动静态化的方案
@qust_青岛:
那就采用2.1的方式,然后看你楼上的回复,增加一个hashset,存在的文件id set进去,不用说太细,你懂的
还有,你说更新文件的时候自动删除对应静态页,那为什么不能更新的时候自动更新静态页呢?
@calvinK: 这个和主动生成关系不大,我想实现的是同一个URL,可以优先访问静态文件,不存在的话就进入路由。
如果url一模一样.那路由搞不了.只能写过滤器或者在进入mvc之前beginrequest.先查找是否有静态文件.如果有直接返回静态文件.
每次查找是否有静态文件,需要读一次磁盘,感觉代价不小。是不是我这样的方案有问题?mvc一般静态化是怎么样处理的呢?
@qust_青岛: 你说的好像iis直接请求html文件没有io操作似得..
@吴瑞祥: 恩,是这么回事