Sur les machines situées dans différents endroits, les informations sur les commentaires des méthodes et propriétés .NET sont affichées différemment, par exemple, sous le système d’exploitation chinois, les commentaires sont affichés en chinois, et les commentaires en anglais dans les systèmes d’exploitation anglais. NET Framework peut afficher les commentaires dans différents langages, comment le résout-il ?
Nous savons que lors du développement d’un contrôle, vous pouvez ajouter une étiquette DescriptionAttribute à une propriété et afficher ses commentaires dans la barre des propriétés, comme ceci :
Mais vous constaterez que la chaîne de commentaires est écrite morte en texte chinois, que se passe-t-il si je veux que le contrôle affiche les commentaires en anglais dans un environnement anglais ? .NET Framework peut afficher les commentaires dans différentes langues, comment le résout-il ?
Décompilation. NET Framework, nous avons constaté que son annotation ne possède pas de DescriptionAttribute, mais utilise un SRDescriptionAttribute, par exemple :
Dans les commentaires, le .NET Framework n’écrit pas de commentaire anglais direct, mais écrit un mot-clé ressource et examine l’implémentation de SRDescriptionAttribute.
C’était trop simple et ingénieux, alors il surchargea l’Obtention de la Description et la prit dans le fichier de ressources à la place. C’est aussi simple que ça.
La classe SRDescriptionAttribute est la suivante :
#region Système d’assemblage, version=4.0.0.0, Culture=neutre, PublicKeyToken=b77a5c561934e089 C :Program Files (x86)Assemblages de référenceMicrosoftFramework.NETFramework4.0System.dll #endregion |