我想有这样定义的捆绑产品:
bundles.Add(
new StyleBundle("~/style.css").Include(
//...
));
如果包名称就是"~/style"
这个作品,但文件扩展名始终返回404我怀疑对CSS和JS文件服务器搜索的驱动器上,而忽略了捆绑系统,但是我无法找到任何人谁是试图包括束名称的文件扩展名。 这是可能的,而不像一个URL重写呢?
我想有这样定义的捆绑产品:
bundles.Add(
new StyleBundle("~/style.css").Include(
//...
));
如果包名称就是"~/style"
这个作品,但文件扩展名始终返回404我怀疑对CSS和JS文件服务器搜索的驱动器上,而忽略了捆绑系统,但是我无法找到任何人谁是试图包括束名称的文件扩展名。 这是可能的,而不像一个URL重写呢?
您可以添加以下到您的<system.webServer>
web.config中部分:
<modules runAllManagedModulesForAllRequests="true" />
这将确保静态资源的请求,如.js
和.css
将通过管理模块和ASP.NET MVC拦截。
作为替代方案,以使runAllManagedModulesForAllRequests
所有请求,你可以只为你需要使用的URL配置。 所以内部的<handlers>
添加以下内容:
<handlers>
<!-- ... -->
<add name="scriptBundle" verb="*" path="script.js" type="System.Web.Optimization.BundleHandler, System.Web.Optimization" preCondition="managedHandler" />
<add name="cssBundle" verb="*" path="style.css" type="System.Web.Optimization.BundleHandler, System.Web.Optimization" preCondition="managedHandler" />
</handlers>