在使用 VS2010 使用 Mvc.JQuery.Datatables Nuget 开发 ASP.NET MVC4 Web 应用程序时,我发现引用的 EmbeddedResourceVirtualPathProvider NuGet 在我的开发盒上运行良好,但在我的生产盒上却惨遭失败。
生产盒是 Windows 2003,安装了 IIS6 和 .NET 4.0。
我在 SO 和谷歌上搜索了很多东西,但是在实施了建议的解决方法之后,它仍然失败:
这就是我所做的。
- 按照https://stackoverflow.com/a/5178993
AppInitialize
的建议实施 - 按照http://haacked.com/archive/2008/11/26/asp.net-mvc-on-iis-6-walkthrough.aspx的建议为 ASP.NET 实施通配符映射
- 按照https://stackoverflow.com/a/3144841的建议为静态文件实施 IgnoreRoute
但它仍然不能提供所有文件。我得到了嵌入的部分视图,但没有嵌入的 css、js 和 jpg 文件。
我的 web.config 有一个 StaticFileHandler 的条目,如下所示:
<system.webServer>
<handlers>
<add path="*.css" verb="GET" name="Static css" type="System.Web.StaticFileHandler" />
<add path="*.js" verb="GET" name="Static js" type="System.Web.StaticFileHandler" />
<add path="*.jpg" verb="GET" name="Static jpg" type="System.Web.StaticFileHandler" />
<add path="*.gif" verb="GET" name="Static gif" type="System.Web.StaticFileHandler" />
</handlers>
</system.WebServer>
我似乎遗漏了一些关键的东西。有什么建议么?