ASP.NET MVC 5解决方案在VS2013中工作但在VS2015中不起作用

时间:2017-02-08 09:22:25

标签: asp.net-mvc visual-studio-2013 visual-studio-2015 asp.net-mvc-5

我在 Visual Studio 2013 中开发了一个ASP.NET MVC 5应用程序。当我在IDE中运行解决方案时,一切正常。测试和生产服务器上的一切工作都很好。

现在,当我在 Visual Studio 2015 中的同一台计算机上运行完全相同的解决方案时,它不会加载css和javascript文件。在浏览器中调试显示,使用VS 2013,静态资源的GET请求成功并获得200 OK。使用VS2015,我收到500内部服务器错误。

在Visual Studio中运行解决方案时,我正在使用IIS Express。

示例:请求jquery.validate.js:

Screenshot when using VS 2013

Screenshot when using VS 2015

修改

我认为问题不在代码中,因为它适用于VS2013和服务器。但是这里有一些代码:

有些脚本是通过捆绑实现的:

BundleConfig:

bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
                    "~/Scripts/jquery.validate*"));

在布局视图中:

@Scripts.Render("~/bundles/jqueryval")

其他脚本直接在视图上实现:

<script src="~/Scripts/vendor/modernizr-2.8.3-respond-1.4.2.min.js"></script>

与CSS相同:

<link href="~/Content/style.css" rel="stylesheet">

同样,它在VS2013和deplyoment服务器上运行良好,但不在VS2015中。

有人有个主意吗?

1 个答案:

答案 0 :(得分:0)

我终于找到了解决问题的方法。

进一步检查chrome调试器中的网络选项卡信息,显示错误消息“无法添加具有唯一键属性'fileExtension'的'mimeMap'类型的重复集合条目。”

我在我的web.config文件中找到了一个导致此错误的条目:

<staticContent>
  <mimeMap fileExtension=".woff2" mimeType="application/font-woff2" />
</staticContent>

This page向我展示了解决方案。

我将web.config更改为:

<staticContent>
  <remove fileExtension=".woff2" />
  <mimeMap fileExtension=".woff2" mimeType="application/font-woff2" />
</staticContent>

这就是诀窍。我的网站现在在VS2015中正常运行。