На машини в различни локации информацията за коментарите на методите и свойствата на .NET се показва по различен начин, например при китайската операционна система коментарите се показват на китайски, а коментарите на английски в английските операционни системи. NET Framework може да показва коментари на различни езици, как го решава?
Знаем, че при разработване на контрол можете да добавите таг DescriptionAttribute към свойство и да покажете коментарите му в лентата с свойства, като това:
Но ще откриете, че низът от коментари е изписан мъртъв в китайския текст, какво ако искам контролът да показва английски коментари в английска среда? .NET Framework може да показва коментари на различни езици, как го решава?
Декомпилация. NET Framework, установихме, че неговата анотация няма DescriptionAttribute, а използва SRDescriptionAttribute, например:
В коментарите .NET Framework не пише директен коментар на английски, а пише ресурсна ключова дума и разглежда имплементацията на SRDescriptionAttribute.
Беше твърде проста и гениална, затова претовари Get of the Description и го взе от ресурсния файл. Толкова е просто.
Класът SRDescriptionAttribute е следният:
#region Assembly System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 // C:Program Files (x86)Reference AssembliesMicrosoftFramework.NETFramework4.0System.dll #endregion |