【发布时间】:2016-11-24 22:13:43
【问题描述】:
我刚刚遇到了我完全错过的 Razor 中最棒的功能。
你可以定义
public delegate IHtmlString RazorBlock(Object unknown);
还有一些功能
public static IHtmlString Foo(RazorBlock block) => block(null);
然后用一块 Razor 调用它:
@(
Helper.Foo(@<div>some text</div>)
)
内部的html实际上是Foo方法接收的内容。
我一直认为不支持在 lambda 中嵌套 Razor。但它是。 Razor 比我想象的要走得更远。
我唯一的问题:
我在查看 DevExtreme 的 ASP.NET MVC 包装器的示例时发现了这个功能,RazorBlock 的定义来自那里。
我不知道为什么unknown 参数是必要的(尽管如此)以及如何从 Razor sn-p 访问它。
【问题讨论】:
标签: asp.net asp.net-mvc razor asp.net-mvc-5 asp.net-core-mvc