2010-04-02 15 views
0

Quelqu'un peut-il expliquer pourquoi je reçois cette erreur de compilation?Attribut en double Postsharp?

Duplicate 'Rad.Core.Aop.MethodArgumentValidation' attribute E:\Scripting\Rad.Core\Properties\AssemblyInfo.cs 

Voici le code:

[assembly: Rad.Core.Aop.MethodArgumentValidation(AttributeTargetTypes="Rad.*", AttributePriority=1)] 
[assembly: Rad.Core.Aop.MethodArgumentValidation(AttributeTargetTypes = "Rad.Core.Aop.*", AttributePriority = 2, AttributeExclude=true)] 

Voici la déclaration de l'aspect:

[Serializable] 
[AttributeUsage(AttributeTargets.Assembly | AttributeTargets.Class | AttributeTargets.Method | AttributeTargets.Property)] 
[MulticastAttributeUsage(MulticastTargets.Method, AllowMultiple=true)] 
public class MethodArgumentValidationAttribute : OnMethodInvocationAspect 
{ ... } 

Il semble comme je suis cet exemple: http://www.sharpcrafters.com/blog/post/multicasting-of-custom-attributes.aspx

Quelqu'un peut-il aider?

Répondre

1

Je pense que l'erreur provient du compilateur C#. Le compilateur ne comprend pas MulticastAttributeUsageAttribute. Mais il comprend AttributeUsageAttribute. Veillez à autoriser les doublons à l'aide de AttributeUsageAttribute.