HtmlHelper扩展来包装ServiceStack Markdown Razor的内容
本文关键字:Razor Markdown ServiceStack 扩展 包装 HtmlHelper | 更新日期: 2023-09-27 17:50:28
使用ServiceStack Markdown Razor,我如何创建一个HtmlHelper扩展方法,其工作方式如下:
在你的视图中你可以这样做:
@{
using (Html.BeginLink())
{
@Html.Raw("Hello World")
}
}
生成结果:
<a>Hello World</a>
from This StackOverflow Answer
ServiceStack Markdown Razor没有ViewContext
的概念,因此我不确定如何以与so答案相同的方式获得Writer。
我可以在ViewPage的StringBuilder
直接从:
@{ this.ViewPage.Builder }
但是这是预期的访问方式吗?如果它打算直接访问StringBuilder, StringBuilder
不会从HtmlHelper
暴露代替ViewData(从MVC)吗?
你可以这样做:
public static class MyHelpers
{
public static IHtmlString PrintHelloWorld(this HtmlHelper helper)
{
return helper.Raw("Hello World");
}
}
确保上面的类与HtmlHelper在同一个命名空间中。