MVC的views目录访问资源文件

这段时间一直在研究ASP.NET MVC,正准备用其来做一个淘客网,呵呵

由于网站需要用到换肤技术,所以准备将所有模板和资源文件都放到Views目录里,这样管理起来也比较方便,但没想到原来在Views里是禁止了一切资源的访问的,我想这样设计可能是防止被人直接访问view所造成不便吧,不过对于现在我的需求来说,只有2种解决办法了:

1、将所有模板和资源文件放到另一个新建的目录里,如建一个 skins,但这样做就会失去了在Views下的一些MVC脚手架的功能(如直接添加view或者与controller之间直接跳转等)
2、想办法修改配置,让在Views目录里也可以直接访问资源文件

本来也想了要么在独立的content目录里再分类存放各个skin的资源文件,但觉得这样做比较麻烦,建立一个skin还要分别放到不同的地方,不好管理,所以只好想办法实现第2种方式了。

其实要解决Views里的限制也很简单,只需修改Views目录里的web.config文件即可 :cheerful:

在web.config里有这样一段配置

<httpHandlers>
      <add path="*" verb="*" type="System.Web.HttpNotFoundHandler" />
</httpHandlers>
就是这里,限制了所有资源的访问,直接使用了HttpNotFoundHandler来处理了,因此我们只需指定限制特定的文件,不要全部禁止就可以了:
<httpHandlers>
      <add path="*.html" verb="*" type="System.Web.HttpNotFoundHandler" />
      <add path="*.ascx" verb="*" type="System.Web.HttpNotFoundHandler" />
      <add path="*.aspx" verb="*" type="System.Web.HttpNotFoundHandler" />
</httpHandlers>
以上就只限制了3种文件的访问,因为考虑到一般模板文件用到的也是这几种啦,当然你可以根据需要自行添加,经过修改后,就可以直接在Views目录里使用所有资源文件了

转载于:https://www.cnblogs.com/kobeycs/archive/2012/06/19/2554271.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值