NancyFX,HtmlHelpers的扩展方法<;T>;在Razor视图中无法识别
我正在尝试使用NancyFX为HtmlHelpers创建一个扩展方法 代码是这样的NancyFX,HtmlHelpers的扩展方法<;T>;在Razor视图中无法识别,razor,nancy,Razor,Nancy,我正在尝试使用NancyFX为HtmlHelpers创建一个扩展方法 代码是这样的 public static IHtmlString DropdownList<T>(HtmlHelpers<T> htmlHelper, string elementId, string elementName, IEnumerable<DropdownListItem> dropdownListItems) { var builder = new St
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);
}
公共静态IHtmlString DropdownList(HtmlHelpers-htmlHelper、string-elementId、string-elementName、IEnumerable-dropdownListItems)
{
var builder=新的StringBuilder();
if(dropdownListItems!=null&&dropdownListItems.ToList().Any())
{
ForEach(t=>builder.AppendFormat(@“{2}”,t.Value,t.Selected?“Selected”:string.Empty,t.Text));
}
var htmlMarkup=string.Format(@“{2}”,elementId,elementName,builder);
返回新的非编码HtmlString(htmlMarkup);
}
在cshtml视图中无法识别此方法。我尝试过使用名称空间和不使用名称空间。
使用名称空间时,我已经在web.config的razor部分注册了它
我正在使用的NancyFX版本:0.16.1.0
任何关于如何在NancyFX中使用razor视图的扩展方法的工作示例都将非常受欢迎。哦,太麻烦了!新手失误。扩展方法中有一个小错误。错过了第一个参数的关键字这个。哦,把它弄糊涂了!新手失误。扩展方法中有一个小错误。缺少关键字这是第一个参数的