Partager via


IL2091 : l’argument générique « target generic parameter » ne satisfait pas « DynamicallyAccessedMembersAttribute » dans « target method or type ». Le paramètre générique « source target parameter » de « source method or type » n’a pas d’annotations correspondantes. La valeur source doit déclarer au moins les mêmes exigences que celles déclarées sur l’emplacement cible auquel elle est affectée

Cause

L’emplacement cible déclare certaines exigences sur la valeur de type via son DynamicallyAccessedMembersAttribute. Ces exigences doivent être respectées par celles déclarées sur la valeur source également via le DynamicallyAccessedMembersAttribute. La valeur source peut déclarer plus d’exigences que la source, si nécessaire.

Exemple

void NeedsPublicConstructors<[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors)] TTarget>()
{
    // ...
}

void TestMethod<TSource>()
{
    // IL2091 Trim analysis: 'TTarget' generic argument does not satisfy 'DynamicallyAccessedMembersAttribute' in 'NeedsPublicConstructors'. The generic parameter 'TSource' of 'TestMethod' does not have matching annotations. The source value must declare at least the same requirements as those declared on the target location it is assigned to.
    NeedsPublicConstructors<TSource>();
}

Résolution

Pour plus d’informations, consultez Correction des avertissements.