检索自定义类名的最佳方法是什么?我的目标是使用描述如下我的课的每一个变化的枚举脱身:Display Custom Class Name
enum
{
MyDataType1,
MyDataType2,
MyDataType3
}
每一类可实现如下:
MyDataType1 : IGenericDataType
MyDataType2 : IGenericDataType
//etc...
不过,我有时需要显示每个班级类型的用户友好名称。在我能从枚举中得到这个之前,但现在我想尽可能从类元数据中获得它。所以,而不是MyDataType1.GetType()。名称,它将显示类名我想使用自定义名称(无需在类中定义一个属性)。
为什么你反对在基类上创建一个抽象属性,该属性提供了描述该类型的用户自定义字符串?这似乎是最自然和最简单的方法。你在另一个答案中说,你说你不想要“一堆额外的步骤”。那么,创建一个新类的人将不得不在某处提供这个字符串,如果它将在那里。为什么不简单明了? '公共抽象字符串UserFriendlyTypeName {get; }' – 2010-09-13 20:12:52
@Jeffery - 我认为原因是因为他试图根据加载的类以外的名称来动态加载他的类。首先创建该名称而不创建类的实例是覆盖ToString()或添加其他属性不是最优的原因的关键。 – Doug 2010-09-14 17:54:43