我有一个大问题。我创建了一个 MVC 5 项目,但无法使用默认代码启动它。问题出在捆绑上。它停止在 Global.asax.cs/Application_Start
方法的 BundleConfig.RegisterBundles(BundleTable.Bundles);
行上。它说"找不到方法:'!!0[] System.Array.Empty()'."(System.MissingMethodException)。
以下是BundleConfig.cs
代码(默认):
public static void RegisterBundles(BundleCollection bundles)
{
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-{version}.js"));
bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
"~/Scripts/jquery.validate*"));
// Use the development version of Modernizr to develop with and learn from. Then, when you're
// ready for production, use the build tool at http://modernizr.com to pick only the tests you need.
bundles.Add(new ScriptBundle("~/bundles/modernizr").Include(
"~/Scripts/modernizr-*"));
bundles.Add(new ScriptBundle("~/bundles/bootstrap").Include(
"~/Scripts/bootstrap.js",
"~/Scripts/respond.js"));
bundles.Add(new StyleBundle("~/Content/css").Include(
"~/Content/bootstrap.css",
"~/Content/site.css"));
}
我正在使用VS 2015预览版。我应该怎么做/改变?
谢谢!
正如Mrchief在评论中所说,问题是由于针对.NET 4.6进行编译,但这不是错误:如果您愿意,可以在服务器上部署4.6 RC运行时。 如果在 Azure 中运行,则在正式发布 4.6(即不是 RC)之前,此选项可能不可用。
从 http://blogs.msdn.com/b/dotnet/archive/2015/05/08/targeting-the-net-framework-4-6-rc.aspx:
你的应用将需要 .NET Framework 4.6(或更高版本)才能运行。您将需要部署 .NET Framework 4.6 RC
目前最安全的做法是不要以 4.6 为目标,除非你真的需要它。
如果服务器上未安装 .NET 4.6,则会发生这种情况。如果你有自己的 Web 服务器(不是 Azure),则可以在此处获取安装程序。注意 - 不要将目标包与实际的 .NET 安装程序混淆。