gpt4 book ai didi

c# - 带有变量的 DisplayAttribute 名称,Dynamic DisplayName

转载 作者:太空狗 更新时间:2023-10-29 20:25:06 25 4
gpt4 key购买 nike

想知道这是否可能或具有这种效果的东西。

public class MyModel
{
public string Name { get; set; }

[Display(Name = String.Format("This is [0]'s phone number", Name)]
public string PhoneNumber { get; set; }
}

我说的是一个包含变量的 DisplayName,它是非静态的,可能基于模型的其他属性。这有可能吗?

最佳答案

这是不可能的,因为为属性的参数指定的参数必须是常量值(本能地,因为没有与其他任何东西相关的上下文并且不一定能够在编译时解析(这是一个要求) ).来自 C# 规范 (3.0) §17.2:

表达式 E 是一个attribute-argument-expression 如果以下所有语句都为真:

  • E 的类型是属性参数类型(§17.1.3)。
  • 在编译时,E 的值可以解析为以下之一:
    • 一个常数值。
    • 一个 System.Type 对象。
    • 属性参数表达式的一维数组。

关于c# - 带有变量的 DisplayAttribute 名称,Dynamic DisplayName,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9434918/

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