我想用我的IsGPUBasedAttribute
,枚举成员是这样的:我应该为枚举成员使用什么AttributeTarget?
public enum EffectType
{
[IsGPUBased(true)]
PixelShader,
[IsGPUBased(false)]
Blur
}
但是编译器不会让我使用:
[AttributeUsage (AttributeTargets.Enum, AllowMultiple = false)]
什么是正确的AttributeTarget
值的使用限制枚举成员?
谢谢你的作品。你知道为什么MS没有提供一个枚举常量吗? – 2011-02-17 18:12:45
因为在编译级别,枚举常量和普通成员字段之间没有太大的区别;你必须检查包含的类型并确定它来自Enum。另外,实际上并没有太多的需要一个只能应用于枚举常量的属性。我曾经应用于枚举常量的唯一一个是来自System.ComponentModel的DescriptionAttribute,它可以应用于任何AFAIK。 – KeithS 2011-02-17 18:25:54