使用razor语法的Html扩展方法

时间:2012-09-12 07:16:17

标签: asp.net-mvc-3 razor

创建一个将Razor语法作为MVC3中的参数

的扩展方法时遇到问题
@Html.Test(x=>x.UserName, () => @<div>Here goes something</div>)

什么是扩展方法签名:

public static IHtmlString Test<TModel, TProperty>(this HtmlHelper<TModel> htmlHelper, Expression<Func<TModel, TProperty>> expression, ????????)

1 个答案:

答案 0 :(得分:1)

我不相信你想要完成的事情是可能的。 Razor语法是一种在HTML页面中使用C#的方法。您已经通过调用Html.Test帮助程序使用Razor语法。 Html.Test(...)内的所有内容都是C#。

那么为什么不使用这样的东西呢?

@Html.Test(x=>x.UserName, "<div>Here goes something</div>")

public static IHtmlString Test<TModel, TProperty>(this HtmlHelper<TModel> htmlHelper, Expression<Func<TModel, TProperty>> expression, string html)