在 Web.Config 中添加 HtmlHelper NameSpace 不起作用

2024-03-13

问题一:

我已经开始学习ASP.NET MVC。我做了一个简单的扩展方法,如下所示:

namespace MvcTestz  //Project is also named as "MvcTestz"
{
  public static class SubmitButtonHelper //extension method.
  {
    public static string SubmitButton(this HtmlHelper helper,string buttonText)
    {
        return string.Format("<input type=\"submit\" value=\"{0}\">",buttonText);
    }
  }
}

然后我将 Custom HtmlHelper 的命名空间添加到Web.Config,像这样

  <namespaces>
    <!--other namespaces-->
    <add namespace="MvcTestz"/>
    <!--other namespaces-->
  </namespaces>

So that I could use intellisense in the razor View ,but it custom Helper didnt showed up in one View (Home/View/About.cshtml).

enter image description here

所以从另一个角度来看(Home/View/Index.cshtml)我添加了命名空间@using MvcTestz;陈述。

问题二:

WebApp 执行主页时(Home/View/Index.cshtml)显示输入按钮文本而不将其渲染为 HTML。

enter image description here On the About page (Home/View/About.cshtml) sever generates error. (Click for Enlarged) https://i.stack.imgur.com/4vJJw.jpg enter image description here

Update:

  1. 智能感知问题已解决,我必须编辑视图目录中存在的 Web.Config。解决了。
  2. HtmlString如果我想渲染一个 Html 按钮,应该使用它。解决了。

问题一:

Razor 命名空间应注册在<system.web.webPages.razor>web.config 中的节点:

 <system.web.webPages.razor>
    <host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.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.Routing" />
        <add namespace="MvcTestz"/>

      </namespaces>
    </pages>
  </system.web.webPages.razor>

问题2: Use HtmlString而不是你的助手中的字符串:

public static HtmlString SubmitButton(this HtmlHelper helper, string buttonText)
{
    return new HtmlString(string.Format("<input type=\"submit\" value=\"{0}\">", buttonText));
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Web.Config 中添加 HtmlHelper NameSpace 不起作用 的相关文章

  • 停止 IResponseCookies.Append() 编码 cookie。 dotnetcore 2.0 [重复]

    这个问题在这里已经有答案了 我们正在构建一个 dotnetcore 2 0 Web 应用程序 该应用程序通过 http 从遗留系统接收 cookie 并在响应中设置 cookie 当我调试应用程序时 我可以看到cookie value未进行
  • 有条件地在 html.RadioButtonFor (MVC4/Razor) 中包含选中的属性

    当您在手动编码的 html 元素 例如单选按钮 中显式包含 checked 属性时 您可以使用 bool 来确定该属性是否存在于该元素上正如这里所看到的 http www davidhayden me blog conditional at
  • 多个 Visual Studio 项目抱怨临时文件丢失,因此无法打开。错误代码 &H80070003

    我在终端服务器上运行 Visual Studio 2010 并且已经运行了一段时间 问题相对较少 今天早上 我启动了我的电脑 在英国的长周末期间 似乎出现了以下问题 我有很多项目 但不是我的所有项目 也不是给定解决方案中的所有项目 抱怨无法
  • Asp.Net Mvc 复选框的默认值?

    model DefaultValue true public bool IsActive get set view Html CheckBoxFor model gt model IsActive html 输出 这是我的预期
  • Asp.NET 处理程序和通用处理程序

    在 Visual Studio 2010 中 当您说 new Item 时 您可以看到 Asp NET Handler 和 Generic Handler 你能告诉我有什么区别吗 我认为它是随 NET 4 0 一起提供的 因为我在 Goog
  • 将参数从 Web 表单传递到 Crystal 报表

    我有一份报告 我想将其显示在网络表单上 没有参数的报告运行良好 带参数的报告让我很头疼 这是我在 BindReport 方法中编写的代码 该代码在表单的页面加载事件上调用 ReportDocument rpt new ReportDocum
  • 在 VS2010 中发布时 SVsBuildManagerAccessor 失败

    我的 VS 2010 有问题 我无法发布任何项目 我收到错误 获取 SVsBuildManagerAccessor 服务失败 一段时间以来我一直在尝试解决这个问题 奇怪的是 在这种情况开始发生的同时 我也开始遇到 sql server ma
  • 如何在不包含 MicrosoftAjax.js 的情况下使用 MicrosoftMvcValidation.js?

    如果您想使用 jQuery Validate 但不想使用主要的 Microsoft AJAX 那么 MVC 2 RC1 中似乎存在问题 即使压缩后 它也有 25kb 根据 Phil Haack 的说法 你应该能够只需包含这些脚本 http
  • 在没有 IIS 的计算机中打开设置为 IIS 目录的 Web 项目,指向嵌入式服务器

    我可以在TFS中打开一个Web项目 但是 在我的 QA 环境中 我必须将其更改为使用 IIS 在我的本地开发环境中 我没有IIS 无法安装它 新的公司规则拒绝我进行 QA 访问 并且我无法打开我的 Web 项目来在我的计算机中修复它 当我打
  • 绑定到列表的复杂模型

    我一直在尝试 MVCContrib 中的 NameValueDeserializer 它将采用 IList 作为控制器的参数 并将表单及其元素绑定到它 但我只是想知道 MVC Beta 是否有任何方法可以做到这一点 我知道您可以绑定强类型对
  • 使用 iTextSharp CSSResolver 类的命名空间

    我正在使用 iTextSharp CSSResolver 类在 vb net 中使用外部 css 请让我知道使用的命名空间XMLWorkerFontProvider CssFilesImpl StyleAttrCSSResolver类 下面
  • Web API 的 ASP.NET MVC Core 控制器 PATCH 方法

    给定一个数据库表 Person 包含 3 列 Id 名字和姓氏 使用真实的 DbContext 时 ASP NET Core Web API MVC 控制器方法 PATCH 仅修改姓氏 看起来如何 我根本不知道如何实现它 并且找不到相关教程
  • ASP.NET MVC运行IIS7部署问题

    我在将 ASP NET MVC 应用程序部署到 IIS7 时遇到问题 我有一个使用 ASP NET MVC Beta 1 创建的 MVC 项目 它仅包含未修改的默认模板 该应用程序在 VS2008 中运行得很好 但是当我将其发布到本地 II
  • 将 Repeater Container.ItemIndex 传递给 Javascript 函数

    在 C Asp Net 中 我需要将中继器出现索引传递到 Javascript 函数中OnClientClick从 ASP 按钮按下 这是我的代码
  • asp.net 将值从 JS/jquery 传递到 C# 背后的代码

    我已经尝试了 所有 可能的方法 将 screen width vlaue 从 aspx 页面上的 JS 脚本发送到后面代码中的 c 虽然我可以看到 screen width 被正确分配 但它永远不会分配给我的隐藏字段价值
  • VS2010 RC - 调试器中只有 100 个 std::map 元素

    当我想查看 std map 容器的所有元素时 在 VS 2010 RC 中调试我的应用程序时遇到一个小问题 当调试器到达断点并且我想检查元素检查器中的映射值 在 本地 窗口中以及用鼠标悬停变量名称后的弹出窗口中 并且我正在向下滚动列表元素它
  • 避免数据集中出现重复名称

    我正在从表中获取数据并绑定到标签并在 gridview 中下拉 但我想从表中过滤重复的名称并将相应的日期分配给 DDL 如何做到这一点 或者还有其他选择吗 private DataSet get string sql select Id N
  • 将字符串转换为正确的 URI 格式?

    有没有简单的方法可以将电子邮件地址字符串转换为正确的 URI 格式 Input http mywebsite com validate email 3DE4ED727750215D957F8A1E4B117C38E7250C33 email
  • asp.net网格分页的SQL查询

    我在用iBatis and SQLServer 使用偏移量和限制进行分页查询的最佳方法是什么 也许我添加该列ROW NUMBER OVER ORDER BY Id AS RowNum 但这只会阻止简单查询的数据访问 在某些情况下 我使用选择
  • ASP.NET Core 会话超时

    我记得我们在 ASP NET 中使用了 session timeout 来更改会话超时 如果不更改 则为 20 分钟 我尝试在 Startup cs 中更改 ASP NET Core 3 1 中的会话超时 但没有任何反应 我对操作员使用身份

随机推荐