有没有办法强制编译器将自定义属性的使用限制为仅用于特定的属性类型,如 int、short、string(所有原始类型)?
类似于 AttributeUsageAttribute的 ValidOn- AttributeTargets枚举。
最佳答案
不,基本上你不能。您可以将其限制为 struct
vs class
vs interface
,仅此而已。另外:无论如何,您都不能向代码外的类型添加属性(除了通过 TypeDescriptor
,这是不一样的)。
关于c# - 仅允许特定类型的自定义属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8382536/