Skirtingose lokalėse esančiuose kompiuteriuose .NET metodų ir ypatybių komentarų informacija rodoma skirtingai, pvz., kinų operacinėje sistemoje komentarai rodomi kinų kalba, o anglų kalbos komentarai rodomi anglų operacinėse sistemose. NET Framework gali rodyti komentarus įvairiomis kalbomis, kaip jis tai išsprendžia?
Žinome, kad kurdami valdiklį galite įtraukti žymę DescriptionAttribute į ypatybę ir rodyti jos komentarus ypatybių juostoje, pvz.:
Bet pamatysite, kad komentarų eilutė yra parašyta negyva kinų tekste, ką daryti, jei noriu, kad valdiklis rodytų angliškus komentarus angliškoje aplinkoje? .NET Framework gali rodyti komentarus įvairiomis kalbomis, kaip jis tai išsprendžia?
Dekompiliacija. NET Framework, nustatėme, kad jo anotacija neturi DescriptionAttribute, bet naudoja SRDescriptionAttribute, pavyzdžiui:
Komentaruose .NET Framework nerašo tiesioginio komentaro anglų kalba, bet rašo išteklių raktažodį ir žiūri į SRDescriptionAttribute įgyvendinimą.
Tai buvo pernelyg paprasta ir išradinga, todėl jis perkrovė aprašymą ir gavo jį iš išteklių failo. Tai taip paprasta.
SRDescriptionAttribute klasė yra tokia:
#region Asamblėjos sistema, versija = 4.0.0.0, kultūra = neutrali, PublicKeyToken = b77a5c561934e089 C:Programų failai (x86)Nuorodų rinkiniaiMicrosoftFramework.NETFramework4.0System.dll #endregion |