是否为框架类型注入一个安全的TypeConverter
本文关键字:一个 安全 TypeConverter 框架 类型 注入 是否 | 更新日期: 2023-09-27 18:14:47
这样明智吗?
class MyTypeConverter : TypeConverter {
// implementation
}
// elsewhere
TypeDescriptor.AddAttributes(typeof(string[]),
new[] { new TypeConverterAttribute(typeof(MyTypeConverter)) });
注意我把这个放在string[]
上。
这样做感觉很脏
安全吗?是的,它被Windows窗体设计器用来注入属性,所以它是一个有效的功能,尽管不是经常使用。
脏?是的,有一点。如果有其他剥猫皮的方法,我会考虑用这种方法。属性是简单的元数据,用于提供一种明确的方式来指定代码的某些特征。通过使用动态属性,你有点脱离了正常的用例。
如果你需要去做,那你就必须去做。但是,请确保在包含类上并不仅仅需要一个只读属性。
然而,我建议使用typeof (IEnumerable),这样你也可以选择列表、集合等。