Partager via


Erreur du compilateur CS0447

Mise à jour : novembre 2007

Message d'erreur

Les attributs ne peuvent pas être utilisés sur des arguments de type, uniquement sur des paramètres de type
Attributes cannot be used on type arguments, only on type parameters

Cette erreur se produit lorsque vous appliquez un attribut à un argument de type dans une instruction d'appel. Il est acceptable d'appliquer un attribut à un paramètre de type dans une déclaration de classe ou de méthode, telle que :

class C<[some attribute] T> {…}

La ligne de code suivante générera cette erreur. Il est supposé que la classe C, définie dans la ligne de code précédente, a une méthode statique appelée MyStaticMethod.

C<[some attribute] T>.MyStaticMethod();

Exemple

Le code suivant génère l'erreur CS0447.

// CS0447.cs
using System;
namespace Test41
{
    public interface I<A> 
    {
        void Meth<B>();
    }
    public class B : I<int> 
    {
        void I<[Test] int>.Meth<X>() { }  // CS0447
    }
}