我正在尝试使用 NancyFX 为 HtmlHelpers<T> 创建一个扩展方法。
代码是这样的
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 中使用带有剃刀视图的扩展方法的工作示例将不胜感激。