使用ServiceStack Markdown Razor,如何创建一个HtmlHelper扩展方法,其工作方式如下:
在您的观点中,您现在可以:
@{
using (Html.BeginLink())
{
@Html.Raw("Hello World")
}
}
产生结果:
<a>Hello World</a>
ServiceStack Markdown Razor没有ViewContext
的概念,因此我不确定如何以与SO答案相同的方式获得Writer。
更新
我可以直接从ViewPage StringBuilder
获取:
@{ this.ViewPage.Builder }
但这是访问它的预期方式吗?如果它打算直接访问StringBuilder,那么StringBuilder
是否会从HtmlHelper
中代替ViewData(来自MVC)?
答案 0 :(得分:2)
您可以执行以下操作:
public static class MyHelpers
{
public static IHtmlString PrintHelloWorld(this HtmlHelper helper)
{
return helper.Raw("Hello World");
}
}
只需确保上面的类与HtmlHelper位于同一名称空间中。