如果要使用其他attribute,我想强制使用attribute
如果将特殊的第三方attribute附加到property,则还需要将此attribute赋予property
有可能这样做吗?

例如:

[Some3rdPartyAttribute("...")]
[RequiredAttribute("...)]
public bool Example{get; set;}

应该不会带来编译错误,
[Some3rdPartyAttribute("...")]
public bool Example{get; set;}

应该带来编译错误或警告。
attribute本身就像http://msdn.microsoft.com/en-US/library/z919e8tw(v=vs.80).aspx本身的示例一样被定义。但是,如果使用其他attribute,如何强制使用attribute

最佳答案

另一种选择是使用一些AOP技术。例如:

PostSharp

使用它,您可以在编译时分析您的代码,并在某些情况不能满足您的要求时发出错误。

有关属性的具体示例,请查看:

PostSharp 2.1: Reflecting Custom Attributes

关于c# - 如果属性已经具有另一个属性,则强制在属性上使用属性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17566623/

10-13 06:00