C# ';System.Web.Mvc.HtmlHelper';不包含';渲染部分';-NETMVC

C# ';System.Web.Mvc.HtmlHelper';不包含';渲染部分';-NETMVC,c#,asp.net-mvc,C#,Asp.net Mvc,我一直在尝试在一台机器上运行ASP.NETMVC1.0,但无法通过。我创建了一个新的MVC项目(C#)。它可以创建所有文件夹、视图、控制器、模型等,一切都很好。然后,当我点击F5时,我得到以下结果: d:\VSCode2008\MVC\mvcapapplication1\Views\Shared\Site.Master(19):错误CS0117:“System.Web.MVC.HtmlHelper”不包含“RenderPartial”的定义 这发生在以下行: ProcessRequest(Htt

我一直在尝试在一台机器上运行ASP.NETMVC1.0,但无法通过。我创建了一个新的MVC项目(C#)。它可以创建所有文件夹、视图、控制器、模型等,一切都很好。然后,当我点击F5时,我得到以下结果:

d:\VSCode2008\MVC\mvcapapplication1\Views\Shared\Site.Master(19):错误CS0117:“System.Web.MVC.HtmlHelper”不包含“RenderPartial”的定义

这发生在以下行:

ProcessRequest(HttpContext.Current);在Default.aspx.cs中

当它试图执行RenderPartial()以呈现部分登录时,似乎会出现这种情况

我已经安装了.Net framework的3.51版。我安装了MVC的1.0版,该程序集显然有RenderPartial()作为HtmlHelper的扩展方法

有人见过类似的东西吗?我发现了一些关于beta和RCs类似问题的帖子,但建议的修复方案没有奏效


我喜欢MVC的理论,但它不让我玩

这里只是想排除明显的问题,但是你能确保在web.config的namespaces部分有这个吗



根据错误消息,您正在引用
System.Web.Mvc.HtmlHelper
。我正在查看Reflector中的
System.Web.Mvc
dll,它告诉我
RenderPartial
位于命名空间
System.Web.Mvc.Html
,而不是
System.Web.Mvc.HtmlHelper

,你可能认为这很愚蠢,但我也遇到了同样的问题。我有一个运行1.0.0.0的MVC应用程序,它突然停止了工作,给了我定义中没有的相同的渲染部分。事实证明,当我疯狂清理我的web.config时,我删除了这个部分。当我重新添加它时,一切又开始工作了。我确信这与类扩展在运行时的加载方式有关

无论如何,重新将其添加到我的web.config在我的机器上起作用。;)


由于您在代码隐藏(即Default.aspx.cs)中引用它,因此需要在文件顶部包含名称空间

使用System.Web.Mvc.Html


是包含RenderPartial扩展方法的命名空间。

另一个可能的问题(取决于错误字符串)是扩展方法存在,但编译器无法将您的参数与已知的方法参数匹配。我使用T4MVC(noob)遇到了这个问题,忘记了在我调用的操作名称之前添加ActionName。

如果您迁移到visual studio 2017或2019,并且您的项目是mvc4,请返回visual studio安装程序,并在“ASP.net和web开发”下选中mvc4选项


解决了我的问题。

是-谢谢-在web配置中得到了这一点(有两个web.config,一个在项目级别,一个在视图下),我需要将此添加到名称空间中,它修复了我的错误。System.Web.Mvc.Html必须包含对HtmlHelper类的扩展。更具体地说,可以在System.Web/pages/namespaces下找到它!我还没意识到我的web.config被屏蔽了。谢谢罗伯特,我看了一眼,看到了同样的东西。我忘了提到,当我运行项目(或任何asp.net web项目)时,它会抱怨web.config-System.Codedom中有一个未经授权的部分。我想也许我的VS2008需要更新-虽然我认为我安装了sp1,但它看起来不在那里。尝试了sp1-没有修复。Renistalled VS2008-无修复程序。我认为在这里重新形象可能是最快的选择…谢谢,罗伯特。真的很有用啊哈!我只是做了完全相同的事情!啊!