5

我在 MVC 3 中有一个项目。它运行良好,每次构建它时,它都会成功。但是,Visual Studio 坚持在每个 razor 语法的视图中显示编译错误。例如:

当前上下文中不存在名称“模型” D:\ ... Detail.cshtml

那行很简单:

@model Namespace.DetailViewModel

我已经尝试过:

  • 清洗液
  • 清洁解决方案并删除binobj文件夹。
  • 关闭 VS 并重新打开它(即使在中间重新启动)。

注意:我使用的是 Visual Studio 2012。

4

2 回答 2

3

我已经解决了!

该项目是在计算机尚未安装 MVC 4 时创建的。安装后,由于某种原因,它一直在工作(尽管如此

所以我所做的是在安装 MVC 4 后进行 MVC 3 项目中应该进行的更改:请参阅此处

之后,它编译并且错误消失了,但是某些库的版本(System.Web.WebPagesSystem.Web.WebPages.Razor和其他一些)出现错误。原来是因为他们已经Copy Local开始了True。改变之后,一切都开始运作良好。

于 2013-01-16T14:07:20.510 回答
0

打开位于 Views 文件夹内的 web.config 文件,如果缺少此部分,请添加:

<system.web.webPages.razor>
  <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.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.Routing" />
    </namespaces>
  </pages>
</system.web.webPages.razor>
于 2013-01-16T13:49:22.580 回答