我正在研究MVC项目上的Visual Studio。我正在尝试使用HtmlHelper。 有些工作正常,但其他只是没有在智能感知工具中显示,如果我输入它们就无法正常工作。对于exmeple BeginForm或DropDownListFor。 (但是下拉列表存在......)
编辑1 它不能在我的计算机上工作,但在我的同事,在同一个项目/同一个分支上工作,它工作正常。
对不起的屏幕截图感到抱歉。
谢谢,
斯特凡。
添加webconfig,因为在评论中提到:
<configuration>
<configSections>
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=314E35">
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=3664E35" requirePermission="false" />
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF5" requirePermission="false" />
</sectionGroup>
</configSections>
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31E35" />
<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>
EDIT2:
更奇怪的是:它在一个项目(我新创建的)中运行良好,但不在解决方案上(我与他人共享)。 ScreenShots of the problem
答案 0 :(得分:0)
来自 Documents
在using块中使用此方法。在这种情况下,该方法会在使用块的末尾呈现结束标记。
必须是@using(Html.BeginForm()){}
您需要将其包含在using
块内,以便在使用块关闭时正确生成结束</form>
。
由于您尝试使用错误的语法,因此智能感知不会显示出来。
编辑1:因为您说大部分语法不起作用..试试这个
在视图中替换您的现有<host />
标记 - &gt;带有以下行的Web.config
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
答案 1 :(得分:0)
在某些情况下,您需要使用using语句(与Html.BeginForm()
一样,因为我看到的是您正在尝试的内容。)
例如:
@using(Html.BeginForm())
{
//Form here
}
同样适用于Ajax.BeginForm()
。此外,您将看到在某些情况下(如Html.RenderPartial
),您必须将其包含在剃刀代码块中,如下所示:@{Html.RenderPartial();}
以下是有关该主题的更多信息:
https://msdn.microsoft.com/en-us/library/system.web.mvc.htmlhelper(v=vs.118).aspx
https://msdn.microsoft.com/en-us/library/system.web.mvc.htmlhelper_methods(v=vs.118).aspx
答案 2 :(得分:0)
在webconfig中似乎很好。请按以下步骤操作。
1.运行解决方案。
2.使用问题卸载项目
3.删除Visual Studio在项目旁边生成的.user文件。
4.使用问题重新编写项目
5.建立解决方案