【发布时间】:2015-07-13 11:32:17
【问题描述】:
我已将我的 ASP.net MVC 2 应用程序升级到带有 VS 2013 社区版的最新 MVC 4。
一切都非常完美,一切正常,除了一件烦人的事情我尝试了很多,但我没有找到任何解决方案。
在我的 razor 视图中,它显示样式、脚本、Html.RenderPartial 如下:
当前上下文中不存在名称“脚本”
在运行时我完全没有问题,只有在 Visual Studio 中修改视图时:
http://i.stack.imgur.com/WPAWJ.png
我尝试在 web.config 文件中添加命名空间(根目录和视图中的命名空间),但这也无济于事,我有以下配置:
根 web.config:
<pages>
<namespaces>
<add namespace="System.Web.Helpers" />
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Optimization" />
<add namespace="System.Web.Routing" />
<add namespace="System.Web.WebPages" />
<add namespace="System.Linq" />
<add namespace="System.Collections.Generic" />
<add namespace="Telerik.Web.Mvc.UI" />
</namespaces>
</pages>
查看 web.config:
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Optimization"/>
<add namespace="System.Web.Routing" />
</namespaces>
</pages>
我尝试重新启动 Visual Studio 很多,重新附加并重新附加项目但没有成功:(
任何建议或帮助真的很受欢迎,因为我会将我的整个项目从 aspx/ascx 转换为 cshtml
【问题讨论】:
-
安装
Microsoft.AspNet.Web.Optimizationnuget 包 -
有很多关于此的帖子,但最好的选择之一是在 ASP.NET MVC 4 中创建一个新项目并将所有文件移动到新解决方案中。不幸的是,每个 ASP.NET 版本都会更改配置文件、引用等,这使得升级变得困难。
-
@too_cool 该软件包已安装:“Microsoft.AspNet.Web.Optimization 1.1.3”已安装。
-
@FranciscoGoldenstein 是的,我看到很多关于升级问题的不同帖子,但我试图避免创建另一个项目 :( 也许这是我需要更改或添加的小东西
-
检查两个 web 配置,一个在项目的根目录中,一个在 Views 文件夹中。验证每个参考的版本并将其与 MS 的文档进行比较。
标签: c# asp.net asp.net-mvc asp.net-mvc-4 razor