gpt4 book ai didi

Asp.NET MvcHtmlString 和 ModelMetadata.FromLambdaExpression 到 AspNetCore?

转载 作者:行者123 更新时间:2023-12-02 11:57:22 31 4
gpt4 key购买 nike

如何将此代码转换为 AspNetCore

public static MvcHtmlString ChqLabelFor<TModel, TValue>(this HtmlHelper<TModel> html,
Expression<Func<TModel, TValue>> expression, object htmlAttributes)
{
var metadata = ModelMetadata.FromLambdaExpression(expression, html.ViewData);
string resolvedLabelText = metadata.DisplayName ?? metadata.PropertyName;
if (metadata.IsRequired)
{
resolvedLabelText += "*";
}
return LabelExtensions.LabelFor<TModel, TValue>(html, expression, resolvedLabelText, htmlAttributes);
}

我知道我现在可以使用 MvcHtmlString 而不是 HtmlString

做什么

ModelMetadata.FromLambdaExpression

我找不到任何替代方案...

最佳答案

那些助手仍然存在,但他们被埋葬了一点。

var modelExplorer = ExpressionMetadataProvider.FromLambdaExpression(expression, htmlHelper.ViewData, htmlHelper.MetadataProvider);

然后您可以使用以下方式访问元数据

modelExplorer.Metadata

以及模型本身

modelExplorer.Model

我这里有一些示例代码,使用它来呈现 PowerBI Embedded 报表。

https://blogs.endjin.com/2016/09/how-to-use-power-bi-embedded-with-aspnetcore/

关于Asp.NET MvcHtmlString 和 ModelMetadata.FromLambdaExpression 到 AspNetCore?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38645157/

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