gpt4 book ai didi

vb.net - 证明我的错误: VB. NET HtmlHelper扩展方法无法在VS 2012的MVC 4中使用

转载 作者:行者123 更新时间:2023-12-04 13:28:02 24 4
gpt4 key购买 nike

无论尝试多少次,都无法使用HTML Helper扩展方法。如果有人想亲自尝试,这是我创建的测试步骤:

  • 使用Visual Studio 2012,我使用“Internet应用程序”项目模板创建了一个新的“Visual Basic ASP.NET MVC 4 Internet Web应用程序”。
  • 我创建一个文件夹"~/Views/Helpers"
  • 我创建一个文件"DisplayForPropertyHelper.vb"并添加以下代码:

    Namespace TestProject.Extensions
    Public Module HtmlHelperExtensions
    <Extension()>
    Public Function DisplayForProperty(helper As HtmlHelper) As MvcHtmlString
    Return MvcHtmlString.Create("TEST")
    End Function
    End Module
    End Namespace
  • 我打开"~/Views/Web.config"并更改以下内容(我添加了扩展 namespace ):

    <system.web.webPages.razor>
    <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=4.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" />
    <add namespace="TestProject.Extensions"/>
    </namespaces>
    </pages>
    </system.web.webPages.razor>
  • 编译项目
  • 选择ANY Razor View 文件,然后键入@Html.Display-您将看到扩展方法未显示。
  • 添加到 Razor View 文件@Imports TestProject.Extensions,然后保存并关闭文件。
  • 重新打开文件,然后键入@Html.Display-您将看到扩展方法未显示。
  • 您甚至可以尝试关闭VS2012并重新打开项目。不会有所作为。

  • 我已经为此战斗了几周了。我在这里和其他地方找到的所有答案都无济于事。必须有人回答。

    最佳答案

    确保使用应用程序名称为 namespace 添加前缀。因此,例如,如果您创建的应用程序在MvcApplication1中称为~/Views/web.config,则应输入:

    <add namespace="MvcApplication1.TestProject.Extensions"/>

    而不仅仅是:
    <add namespace="TestProject.Extensions"/>

    是的,我想这是VB.NET的问题之一:-)哦,别忘了对 ~/Views/web.config文件进行更改后,关闭并打开Razor View ,否则您的更改将不会立即被考虑(如果您运行该应用程序,它将可以正常运行)。

    关于vb.net - 证明我的错误: VB. NET HtmlHelper扩展方法无法在VS 2012的MVC 4中使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14723010/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com