Su macchine in diverse località, le informazioni sui commenti sui metodi e proprietà .NET sono visualizzate in modo diverso; ad esempio, sotto il sistema operativo cinese, i commenti sono visualizzati in cinese e i commenti in inglese nei sistemi operativi inglesi. NET Framework può visualizzare i commenti in linguaggi diversi, come li risolve?
Sappiamo che quando si sviluppa un controllo, si può aggiungere un tag DescriptionAttribute a una proprietà e mostrare i suoi commenti nella barra delle proprietà, così:
Ma scoprirai che la sequenza di commenti è scritta senza uso in cinese, cosa succede se volessi che il controllo mostri i commenti in inglese in un ambiente inglese? .NET Framework può visualizzare i commenti in lingue diverse, come lo risolve?
Decompilation. NET Framework, abbiamo scoperto che la sua annotazione non ha un DescriptionAttribute, ma utilizza un SRDescriptionAttribute, ad esempio:
Nei commenti, il .NET Framework non scrive un commento diretto in inglese, ma scrive una parola chiave risorsa e analizza l'implementazione di SRDescriptionAttribute.
Era troppo semplice e ingegnoso, così sovraccaricò il Get of the Description e lo ottenne dal file delle risorse. È così semplice.
La classe SRDescriptionAttribute è la seguente:
#region Sistema di Assemblaggio, Version=4.0.0.0, Culture=neutrale, PublicKeyToken=b77a5c561934e089 C:Program Files (x86)Riferimento AssembliesMicrosoftFramework.NET Lavoro4.0System.dll #endregion |