C# 在多个位置具有相同属性(不是复制粘贴方法D)

C# 在多个位置具有相同属性(不是复制粘贴方法D),c#,attributes,C#,Attributes,我需要在不同类的属性上具有相同的属性,例如: [Display( Name = "Last Name" )] 有没有办法不在不同的类/接口上复制粘贴同一行?取而代之的是,使用一个引用该行的构造,并将引用复制粘贴到所有位置?您可能会找到帮助。寻找你自己 您可以在ruby或powershell之类的简单工具中创建一个脚本,将该行添加到每页的同一位置,或者在正则表达式匹配后添加该行。一个更简单的方法是创建一个父类,并让您想要实现此属性的每个类扩展父类 如果您最终需要在许多地方进行相同的更改,以至于复

我需要在不同类的属性上具有相同的属性,例如:

[Display( Name = "Last Name" )]

有没有办法不在不同的类/接口上复制粘贴同一行?取而代之的是,使用一个引用该行的构造,并将引用复制粘贴到所有位置?

您可能会找到帮助。寻找你自己

您可以在ruby或powershell之类的简单工具中创建一个脚本,将该行添加到每页的同一位置,或者在正则表达式匹配后添加该行。一个更简单的方法是创建一个父类,并让您想要实现此属性的每个类扩展父类


如果您最终需要在许多地方进行相同的更改,以至于复制和粘贴工作量过大,那么您应该查看您的项目,并尝试确定是否存在关系,或者是否确实有那么多不相关的字段最终具有相同的值

我最终使用了一个常量:

[Display( Name = Constants.LastName )]

其中Constants.LastName=姓氏;是一个已定义的字符串常量。

我不需要在许多地方进行更改,许多地方需要引用相同的实际对象,而不是对象的副本。相同的实例或相同的属性?如果是同一个实例,那么这听起来像是一个依赖关系,应该注入依赖它的所有东西中。如果它是相同的属性,那么它很可能是其他类扩展的父类。如果您觉得可能需要在特定子类中重写该属性,则可以将其设置为虚拟属性,否则只需在使用父类时设置该属性,请确保该属性为虚拟属性。