【发布时间】:2010-12-10 22:44:34
【问题描述】:
使用 ASP.NET MVC 1.0、.NET 3.5 和 C#,您可以轻松地向方法传递一个 lambda 表达式,该表达式将在方法内执行时执行“Response.Write”一些内容:
<% Html.SomeExtensionMethod(
() => { <%
<p>Some page content<p>
%> }
) %>
方法签名类似这样:
public void SomeExtensionMethod(this HtmlHelper helper, Action pageContent)
{
pageContent();
}
有谁知道如何使用上面显示的相同方法签名在 VB.NET 中使用 Lambda 表达式执行类似的调用?
我在 VB.NET 中尝试了以下方法,但它不起作用:
<% Html.SomeExtensionMethod(New Action( _
Function() %> <p>Some Content</p> <% _
)) %>
我收到一个异常提示“预期表达式”。
谁能帮我解决我做错了什么?你如何在 VB.NET 中做到这一点?
【问题讨论】:
-
使用反射器。 [谁不讨厌字符数限制]
-
想知道 - 这种方法的用例是什么?你到底想达到什么目的?
-
这在 ASP.NET MVC 中非常方便。
-
这也是一个非常简化的用例,不是完整的使用场景。
标签: asp.net-mvc vb.net lambda