IL3002 : évitez d’appeler des membres annotés avec « RequiresAssemblyFilesAttribute » lors de la publication en tant que fichier unique.

Value
Identificateur de la règle IL3002
Catégorie SingleFile
Le correctif est cassant ou non cassant Non cassant

Cause

Lors de la publication d’une application en tant que fichier unique (par exemple, en définissant la PublishSingleFilepropriété de true dans un projet), l’appel de membres annotés avec l’attribut RequiresAssemblyFilesAttribute n’est pas compatible avec un fichier unique. Ces appels ne sont pas compatibles, car les membres annotés avec cet attribut nécessitent que les fichiers d’assembly soient sur le disque et que les assemblys incorporés dans une application à fichier unique soient chargés en mémoire.

Exemple :

[RequiresAssemblyFiles(Message="Use 'MethodFriendlyToSingleFile' instead", Url="http://help/assemblyfiles")]
void MethodWithAssemblyFilesUsage()
{
}
void TestMethod()
{
    // IL3002: Using member 'MethodWithAssemblyFilesUsage' which has 'RequiresAssemblyFilesAttribute'
    // can break functionality when embedded in a single-file app. Use 'MethodFriendlyToSingleFile' instead. http://help/assemblyfiles
    MethodWithAssemblyFilesUsage();
}

Comment corriger les violations

Les membres annotés avec l’attribut « RequiresAssemblyFilesAttribute » ont un message destiné à fournir des informations utiles aux utilisateurs qui publient en tant que fichier unique. Envisagez d’adapter le code existant au message de l’attribut ou de supprimer l’appel non conforme.

Quand supprimer les avertissements

Vous pouvez supprimer l’avertissement si le code existant a été adapté conformément à la recommandation décrite dans le message de l’attribut « RequiresAssemblyFilesAttribute ».