使用 ServiceStack Markdown Razor ,我如何创建一个 HtmlHelper 扩展方法,其工作方式如下:


@{
    using (Html.BeginLink())
    {
        @Html.Raw("Hello World")
    }
}


<a>Hello World</a>

来自 This StackOverflow Answer

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# - HtmlHelper 扩展以环绕 ServiceStack Markdown Razor 的内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14105044/

10-12 04:02