我最近对我的两个项目进行了 NuGet 包更新。所以我使用的是 Microsoft.AspNet.Mvc 5.2.0 版。一个项目运行良好,另一个项目出现问题,因为我现在无法创建强类型 Razor View 。以下是我的观点之一:
@ModelType MyServiceLibrary.EmailTemplateModelObject
Dear @Model.FirtName,<br><br>
我收到以下错误:
'ModelType' is not declared. It may be inaccessible due to its protection level.
这个问题中引用的内容几乎完全相同:asp.net mvc 3 'ModelType' is not declared
我已尝试实现建议的修复,但没有成功。我正在使用 vb.net 环境。这是我的 ~/Views/Web.config 中的内容:
<configSections>
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
</sectionGroup>
</configSections>
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.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>
谁能看到我在这里做错了什么?
最佳答案
我在创建一个新的 MVC 5 项目时遇到了一个非常相似的问题,尽管它是未声明的“布局”。
我打开了 TOOLS > NuGet Package Manager > Manage NuGet Packages for Solutiom 项,选择“Installed packages”并单击“Updaet All”,通过将所有各种 DLL 和 web.config 文件更新到最新版本来解决我的问题.
关于asp.net-mvc - asp.net mvc 5 'ModelType' 未声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24924953/