Dans l'Entity Framework code source (lien), j'ai trouvé cette ligne:
public virtual IRelationalTransaction Transaction
{ get; [param: NotNull] protected set; }
L' [param: NotNull]
partie semble très étrange pour moi. Toute idée de ce genre de syntaxe C# est-ce? Je suis familier avec les attributs et les param mais pas cette combinaison.
La définition de NotNull est ceci:
[AttributeUsage(
AttributeTargets.Method | AttributeTargets.Parameter |
AttributeTargets.Property | AttributeTargets.Delegate |
AttributeTargets.Field)]
internal sealed class NotNullAttribute : Attribute
{
}
Qui je m'attendais à être utilisé simplement comme [NotNull]
mais qu'est - param
fais ici?