gpt4 book ai didi

c# - 如何将匿名对象转换为键/值对或 HTML 属性?

转载 作者:太空狗 更新时间:2023-10-29 16:51:55 24 4
gpt4 key购买 nike

在我的 MVC 应用程序中,我有一个辅助类,旨在呈现一组相关按钮。我正在尝试将按钮的 HTML 属性作为匿名对象传递:

new { @class="myClass1 myClass2" }

助手将 HTML 作为 MvcHtmlString 发出,我目前正在这样构建它:

        foreach (var b in _buttons)
{
sb.AppendFormat("<button type='submit' name='{0}' {1}>{2}</button>",
b.Value,
b.HtmlAttributes,
b.Text);
}

我的问题是上面的代码产生了无效的 HTML:

<button type='submit' name='Foo' { class = myClass1 myClass2 }>Bar</button>

不幸的是,由于它是作为对象 传递给助手的,所以我没有可用的类型信息。我可以 ToString 对象并解析结果,但这看起来很愚蠢。如何以编程方式将匿名对象转换为 key="value" 样式的 HTML 属性?是否有现成的实用程序?

最佳答案

您应该使用 TagBuilder 类,它会为您构建 HTML 标签。

然后你可以写

builder.MergeAttributes(HtmlHelper.AnonymousObjectToHtmlAttributes(HtmlAttributes));

关于c# - 如何将匿名对象转换为键/值对或 HTML 属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9504090/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com