RenderPartialForEach <t>(..)HtmlHelper for asp.net mvc?</t>

时间:2009-07-22 12:26:38

标签: asp.net-mvc

抛出错误:

public static void RenderPartialForEach<T>
(this HtmlHelper helper, string partialName, IList<T> list)
{
    foreach (var item in list)
       helper.RenderPartial(partialName, item);
}

=&GT;

  

错误消息:CS1519:无效的令牌'('在类,结构或接口成员声明中

     

第283行:#line default
  第284行:#line hidden
  285行:@__ w.Write(“\ r \ n \ r \ n \ r \ n \ n \ r \ n”);
  286行:}   第287行:

是否可以创建干净的htmlhelper
哪个能够为列表中的每个项目渲染部分视图作为模型?

修改
这只是我身边的一个大错。我忘了添加'&lt;%}%&gt;' 并得到错误消息的混淆原因。 ^^

3 个答案:

答案 0 :(得分:1)

你在哪里宣布这样的事情?尝试将该扩展方法编写在代码文件中的单独静态类中,而不是.aspx中的内联。

答案 1 :(得分:1)

您需要在类中声明该方法。你这样做并不明显,但它肯定会导致你所看到的错误类型。

  public static class CustomHtmlHelperExtensions
  {
       public static void RenderPartialForEach<T>(
              this HtmlHelper helper,
              ...
  }

编辑:回想起来,鉴于错误文本,我怀疑错误位于标记的其他位置。也许,你错过了if语句或foreach子句的括号。

答案 2 :(得分:0)

只是一个猜测...你正在实现一个通用方法(T),但你实际上并没有用类型参数替换泛型参数(T)?

相关问题