【发布时间】:2015-09-25 07:27:06
【问题描述】:
我遇到了一个问题,VS (2015) 抱怨我的 .cshtml 视图中的一些事情。
“当前上下文中不存在名称‘模型’”
@model Project.MyModel
“HtmlHelper”不包含“TextBoxFor”的定义,并且找不到接受“HtmlHelper”类型的第一个参数的扩展方法“TextBoxFor”(您是否缺少 using 指令或程序集引用?)
@Html.TextBoxFor(x => Model.Property)
我不知道为什么会这样。
我的观点/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>
</system.web.webPages.razor>
我的网站配置
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"/>
</namespaces>
</pages>
谁能看到我在这里遗漏了什么?
编辑:它在 VS 2013 中运行良好..
【问题讨论】:
-
您是否尝试关闭并重新打开此文件?
-
对照 web.config 文件中的所有版本号检查您的所有
<bindingRedirect .. newVersion=".." />是否存在版本不匹配 -
你的 .Net 目标框架是什么?
-
4.5.请看我的编辑。它在 VS 2013 中运行良好
-
<appSettings> <add key="webpages:Version" value="3.0.0.0" />尝试在您的 web.config 中将上述值3.0.0.0更改为2.0.0.0。构建解决方案并打开视图。
标签: c# asp.net-mvc