使用 ServiceStack Markdown Razor ,如何创建一个 HtmlHelper 扩展方法,其工作方式如下:
In your views you can now do:
@{
using (Html.BeginLink())
{
@Html.Raw("Hello World")
}
}
Which yields the result:
<a>Hello World</a>
ServiceStack Markdown Razor 没有 ViewContext
的概念,所以我不确定如何像 SO Answer 中那样获得 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 在同一个命名空间中即可。
关于c# - 为 ServiceStack Markdown Razor 包装内容的 HtmlHelper 扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14105044/