Partager via


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

Valeur
Identificateur de la règle Numéro IL3002
Catégorie SingleFile
Le correctif est critique ou non critique Sans rupture

La cause

Lorsque vous publiez une application en tant que fichier unique (par exemple, en définissant la propriété PublishSingleFiletrue dans un projet), l'appel des 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 les assemblys incorporés dans une application à fichier unique sont 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 en violation.

Quand supprimer les avertissements

Il est approprié de supprimer l’avertissement lorsque le code existant a été adapté à la recommandation décrite dans le message de l’attribut « RequiresAssemblyFilesAttribute ».