我最近将我的项目更新为mvc 5,EF 6.我通过包控制台管理器(update-package)更新了所有软件包.
现在我在每个视图/局部视图/布局中看到大量关于html助手的警告.
这些是一些错误:
"ViewBag"这个名称在当前上下文中不存在
"Styles"这个名称在当前上下文中不存在
当前上下文中不存在"脚本"这个名称
'System.Web.WebPages.Html.HtmlHelper'不包含'Partial'的定义,也没有扩展方法'Partial'接受类型'System.Web.WebPages.Html.HtmlHelper'的第一个参数可以找到(你是吗?)缺少using指令或程序集引用?)
'System.Web.WebPages.Html.HtmlHelper'不包含'ActionLink'的定义......
'System.Web.WebPages.Html.HtmlHelper'不包含'BeginForm'的定义...
'System.Web.WebPages.Html.HtmlHelper'不包含'AntiForgeryToken'的定义......
这是views/webconfig:
这是全局Web配置:
Tommy.. 21
我在您的全局web.config中立即看到两个问题.
首先,这一行
需要更新到此行
第二,这些线
需要更新到这些行
程序集版本需要与升级后的版本相匹配.此外,在进行这些更改后,您可能需要在VS中执行清理/重建以确保已清除旧的程序集.
我在您的全局web.config中立即看到两个问题.
首先,这一行
<add key="webpages:Version" value="2.0.0.0" />
需要更新到此行
<add key="webpages:Version" value="3.0.0.0" />
第二,这些线
<dependentAssembly>
<assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
</dependentAssembly>
需要更新到这些行
<dependentAssembly>
<assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
程序集版本需要与升级后的版本相匹配.此外,在进行这些更改后,您可能需要在VS中执行清理/重建以确保已清除旧的程序集.