ASP.NET MVC - 如何构建不需要包装在 MvcHtmlString 中的 HtmlHelper?

发布于 2024-10-07 07:44:15 字数 280 浏览 2 评论 0原文

当我使用 Html Helpers 中的构建时,我可以简单地编写以下内容。

@Html.Actionlink(bla)

但是当我编写自己的 Html Helpers 时,我需要通过将其包装在 MvcHtmlString 中来阻止编码。

@MvcHtmlString.Create(Html.CustomPager(bla))

在扩展方法中我可以做些什么,这样我就不必担心“不“编码吗?

When I use the build in Html Helpers, I can simply write the following.

@Html.Actionlink(bla)

But when I write my own Html Helpers, I need to block the encoding by wrapping it in a MvcHtmlString

@MvcHtmlString.Create(Html.CustomPager(bla))

Is there anything I can do in the extension method so that I don't have to worry about "not" encoding it?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

新人笑 2024-10-14 07:44:15

是的,你可以让助手返回一个 MvcHtmlString - 即:

public static MvcHtmlString Css(this HtmlHelper html, string path)
{
    return MvcHtmlString.Create(/* some code*/);
}

而不是:

public static string Css(this HtmlHelper html, string path)
{
    return (/* some code*/);
}

我不知道剃刀的要求,所以这也许是一个盲目的黑暗答案。

yes, you can make the helper return a MvcHtmlString - i.e:

public static MvcHtmlString Css(this HtmlHelper html, string path)
{
    return MvcHtmlString.Create(/* some code*/);
}

rather than:

public static string Css(this HtmlHelper html, string path)
{
    return (/* some code*/);
}

i don't know the razor requirements, so this is a blind stab in the dark answer perhaps..

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文