我可以调用一个接受HTML / Razor块作为参数的方法,如下所示:
@Html.SiteText(@<div>Some content</div>)
由于解析器错误,使用多个顶级标记调用相同的方法失败。即。
@Html.SiteText(@<div>Some content</div><div>Some more content</div>)
失败了:
Compiler Error Message: CS1026: ) expected
有没有办法传递一个有多个顶级标签的Razor助手?
编辑:
这是SiteText扩展方法的签名:
public static IHtmlString SiteText(this HtmlHelper htmlHelper, Func<object, HelperResult> content)
该方法的实际实现无关紧要,因为这适用于如何调用方法而不是实现对输入的处理。
答案 0 :(得分:3)
看待它的简单方法是Razor视图引擎将每个div标签视为单个属性。
将它们包装在文本标记中可解决此问题:
@Html.SiteText(@<text><div>Some content</div><div>Some more content</div></text>)
答案 1 :(得分:2)
未经测试,但我怀疑这会解决它:
@Html.SiteText(@<text>
<div>Some content</div>
<div>Some more content</div>
</text>)