【问题标题】:NancyFX, extension method for HtmlHelpers<T> is not recognised in Razor viewNancyFX,HtmlHelpers<T> 的扩展方法在 Razor 视图中无法识别
【发布时间】:2013-03-21 17:54:36
【问题描述】:

我正在尝试使用 NancyFX 为 HtmlHelpers 创建一个扩展方法。

代码是这样的

  public static IHtmlString DropdownList<T>(HtmlHelpers<T> htmlHelper, string elementId,     string elementName, IEnumerable<DropdownListItem> dropdownListItems)
  {
    var builder = new StringBuilder();
    if (dropdownListItems != null && dropdownListItems.ToList().Any())
    {
        dropdownListItems.ToList().ForEach(t => builder.AppendFormat(@"<option value=""{0}"" {1}>{2}</option>", t.Value, t.Selected ? "selected" : string.Empty, t.Text));
    }

    var htmlMarkup = string.Format(@"<select id=""{0}"" name=""{1}"">{2}</select>", elementId, elementName, builder);
    return new NonEncodedHtmlString(htmlMarkup);
  }

此方法在 cshtml 视图中无法识别。我已经尝试过使用命名空间和没有命名空间。 使用命名空间时,我已经在 web.config 的 razor 部分注册了它。

我正在使用的 NancyFX 版本:0.16.1.0

非常感谢任何关于如何在 NancyFX 中使用带有剃刀视图的扩展方法的工作示例。

【问题讨论】:

    标签: razor nancy


    【解决方案1】:

    哦,弄糊涂了!菜鸟错误。扩展方法有一个小错误。第一个参数缺少关键字this

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-02-05
      • 1970-01-01
      • 2022-09-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多