【问题标题】:Razor can not find my HTML helperRazor 找不到我的 HTML 助手
【发布时间】:2012-11-12 20:37:07
【问题描述】:

我正在为 Web 使用 VS Express 2012。我的项目是 MVC 4 项目。

我正在尝试创建一个菜单项,该菜单项是带有标签的 png 图像。我几乎剪切并粘贴了这段代码:

Action Image MVC3 Razor

当我尝试使用辅助剃须刀时找不到它。

我收到此错误:

CS1061:“System.Web.Mvc.HtmlHelper”不包含“AddMenuItem”的定义,并且找不到接受“System.Web.Mvc.HtmlHelper”类型的第一个参数的扩展方法“AddMenuItem”(是您缺少 using 指令或程序集引用?)

我的代码如下所示:http://pastebin.com/cfsN99tF

我正在尝试从 _Layout.cshtml 中使用它:http://pastebin.com/5vN8yYCa

我已将命名空间添加到 Web.Config

<pages>
  <namespaces>
    <add namespace="System.Web.Helpers" />
    <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" />
    <add namespace="System.Web.WebPages" />
    <add namespace="HtmlHelperExtensions" />
  </namespaces>
</pages>

我还需要做什么?

【问题讨论】:

  • 您编辑了哪个web.config?因为您需要将命名空间添加到位于Views 文件夹内的web.config。您还应该尝试将以下行:@using HtmlHelperExtensions 添加到您的 _Layout.cshtml 的顶部...
  • 谢谢!我只需要将它添加到views/Web.config 下,然后它就可以工作了。我对 ASP.Net MVC 很陌生,所以我没有看到两个单独的配置文件在哪里。随意添加它作为答案。这里也有答案:stackoverflow.com/questions/3239006/…

标签: razor asp.net-mvc-4


【解决方案1】:

您还需要重新加载您的解决方案

【讨论】:

  • 谢谢,但问题是我将命名空间添加到了错误的配置文件中。它需要在 Views 文件夹中。
  • 这对我有用。我不得不关闭然后重新打开解决方案。
【解决方案2】:

需要添加到 Views 文件夹的配置文件中,而不是主配置中。

看到这个答案:

How do I import a namespace in Razor View Page?

【讨论】:

  • 终于有答案了!非常感谢。
猜你喜欢
  • 2013-07-12
  • 1970-01-01
  • 2011-05-25
  • 2012-08-30
  • 2019-09-04
  • 2011-05-25
  • 1970-01-01
  • 1970-01-01
  • 2017-05-11
相关资源
最近更新 更多