asp.net – “MVC 3视图”中的当前上下文中不存在该名称“HTML”
发布时间:2020-12-15 23:37:34 所属栏目:asp.Net 来源:网络整理
导读:我开始使用“MVC 3”,但我面临一些小问题.在我的意见中,当我编写如下代码: @if(Request.IsAuthenticated) { textWelcome b@Context.User.Identity.Name/b! [ @Html.ActionLink("Log Off","LogOff","Account") ]/text}else { @:[ @Html.ActionLink("Log On",
我开始使用“MVC 3”,但我面临一些小问题.在我的意见中,当我编写如下代码:
@if(Request.IsAuthenticated) { <text>Welcome <b>@Context.User.Identity.Name</b>! [ @Html.ActionLink("Log Off","LogOff","Account") ]</text> } else { @:[ @Html.ActionLink("Log On","LogOn","Account") ] } 像@Request和@Html这样的对象表示错误:当前上下文中不存在名称“HTML”. @Context,@ViewBag,@Layout,@Url等也是一样. 看到: image http://i56.tinypic.com/28s1smp.jpg 但代码正确编译没有错误.问题是我不能在视图中使用Intellisense与这些对象.是正常吗(我不这么认为).可能会发生什么? 我已经重新安装了MVC 3框架,但仍然发生. 注意:这是一个从头开始的新项目,而不是MVC 2迁移.这与Razor引擎和ASPX都发生. 这是Views文件夹中的Web.Config: <?xml version="1.0"?> <configuration> <configSections> <sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup,System.Web.WebPages.Razor,Version=1.0.0.0,Culture=neutral,PublicKeyToken=31BF3856AD364E35"> <section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection,PublicKeyToken=31BF3856AD364E35" requirePermission="false" /> <section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection,PublicKeyToken=31BF3856AD364E35" requirePermission="false" /> </sectionGroup> </configSections> <system.web.webPages.razor> <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory,System.Web.Mvc,Version=3.0.0.0,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> <appSettings> <add key="webpages:Enabled" value="false" /> </appSettings> <system.web> <httpHandlers> <add path="*" verb="*" type="System.Web.HttpNotFoundHandler"/> </httpHandlers> <!-- Enabling request validation in view pages would cause validation to occur after the input has already been processed by the controller. By default MVC performs request validation before a controller processes the input. To change this behavior apply the ValidateInputAttribute to a controller or action. --> <pages validateRequest="false" pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter,PublicKeyToken=31BF3856AD364E35" pageBaseType="System.Web.Mvc.ViewPage,PublicKeyToken=31BF3856AD364E35" userControlBaseType="System.Web.Mvc.ViewUserControl,PublicKeyToken=31BF3856AD364E35"> <controls> <add assembly="System.Web.Mvc,PublicKeyToken=31BF3856AD364E35" namespace="System.Web.Mvc" tagPrefix="mvc" /> </controls> </pages> </system.web> <system.webServer> <validation validateIntegratedModeConfiguration="false" /> <handlers> <remove name="BlockViewHandler"/> <add name="BlockViewHandler" path="*" verb="*" preCondition="integratedMode" type="System.Web.HttpNotFoundHandler" /> </handlers> </system.webServer> </configuration> 谢谢! 解决方法
我已经用旧的,好的,明智的Microsoft默认解决方案解决了这个问题:重新安装所有的事情.
卸载并重新安装Visual Studio 2010和MVC 3 Framework. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 如果非活动状态超过安全标记验证间隔,则ASP
- asp.net在Server.Transfer之后如何获取当前页面的路径?
- asp.net – 实体框架:坚持在多对多添加新实体,而不是重新使
- asp.net-core – 日期输入标记帮助程序未显示数据库中的日期
- asp.net-mvc – SessionStateTempDataProvider要求启用Sess
- asp.net-mvc – jQuery.POST – 使用Form.Serialize()传递另
- ASP.NET可以在C#中设置会话超时值
- asp.net – 会话状态,页面生命周期中的应用程序状态在哪里?
- asp.net-core – 如何在ASP.NET 5 MVC中访问缓存?
- asp.net – 如何将Controller上的Ajax reqest重定向到登录页
推荐文章
站长推荐
热点阅读