限制自定义属性的属性类型

时间:2010-04-25 13:01:03

标签: .net attributes

有没有人知道是否可以在您自己的自定义属性上定义/声明对它可能适用的字段类型的限制? 有一些标志限制了属性的使用:

[AttributeUsage(
 AttributeTargets.Property,
 AllowMultiple = false)]

我正在寻找类似的东西:

UseOnlyOnType = typeof(string)

有什么想法吗?

2 个答案:

答案 0 :(得分:4)

这是不可能的。

但是,由于您必须编写代码来使用属性(它们本身就是未使用的元数据),因此只有在字段的类型为string时才检查您的属性,该代码才有效。

答案 1 :(得分:3)

没有办法让编译器为您检查 - 您最好的选择是使用反射对字段执行时检查。