Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
La cause
Appeler (ou accéder en utilisant la réflexion) un membre annoté avec RequiresUnreferencedCodeAttribute.
Par exemple:
[RequiresUnreferencedCode("Use 'MethodFriendlyToTrimming' instead", Url="http://help/unreferencedcode")]
void MethodWithUnreferencedCodeUsage()
{
}
void TestMethod()
{
// IL2026: Using method 'MethodWithUnreferencedCodeUsage' which has 'RequiresUnreferencedCodeAttribute'
// can break functionality when trimming application code. Use 'MethodFriendlyToTrimming' instead. http://help/unreferencedcode
MethodWithUnreferencedCodeUsage();
}
Description de la règle
RequiresUnreferencedCodeAttribute indique que le membre fait référence au code qui est susceptible d'être supprimé par le découpeur.
Voici quelques exemples courants :
Load(String) est marqué comme
RequiresUnreferencedCodeétant donné que l’assembly chargé peut accéder aux membres qui ont été supprimés. L'outil de réduction supprime tous les membres du framework à l'exception de ceux directement utilisés par l'application. Il est probable que le chargement de nouvelles assemblies lors de l’exécution tente d’accéder à des membres manquants.XmlSerializer est marqué comme
RequiresUnreferencedCodeen raison de l'utilisation parXmlSerializerd'une réflexion complexe pour analyser les types d’entrée. La réflexion ne peut pas être suivie par le découpeur, donc les membres utilisés de manière transitive par les types d'entrée peuvent être supprimés.