天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

.NET的資源并不限于.resx文件,你可以采用任意存儲形式 [上篇]

  為了構建一個輕量級的資源管理框架以滿足簡單的本地化(Localization)的需求,我試圖直接對現有的Resource編程模型進行擴展。雖然最終沒能滿足我們的需求,但是這兩天也算對.NET如何進行資源的存取進行了深入的學習,所以將我對此的認識通過博文的方式與諸位分享。在本篇文章中,我會通過自定義ResourceManager讓資源的存儲形式不僅僅局限于.ResX文件,你可以根據需要實現任意的存儲方式,比如結構化的XML、數據庫表,甚至是通過遠程訪問獲取資源。(文中的例子從這里下載)

一、從添加資源文件說起
二、ResourceManager、ResourceSet、ResourceReader與ResourceWriter
三、自定義BinaryResourceManager管理單獨二機制資源文件

  一、從添加資源文件(.resx文件)說起

  說起資源,你首先想到的肯定是通過VS添加的擴展名為.resx的資源文件。在這個資源文件中,你不但可以添加單純的文本資源條目,也可以添加圖片、圖標、文本文件以及其它類型文件。 不但如此,當你在.resx文件中定義任意類型資源條目的時候,默認定義的代碼生成器會為你生成對應的托管代碼,使你可以采用強類型編程的方式獲取某個條目。

image  比如說,如果你在一個名稱為Resources.resx的資源文件中定義了如上圖所示的兩個字符串資源條目,默認的代碼生成器或為你生成如下的代碼。

[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[
global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[
global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources {
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[
global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources() {
}
[
global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Demo.Properties.Resources", typeof(Resources).Assembly);
resourceMan
= temp;
}
return resourceMan;
}
}

[
global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set {
resourceCulture
= value;
}
}
internal static string Greeting4Chris {
get {
return ResourceManager.GetString("Greeting4Chris", resourceCulture);
}
}
internal static string Greeting4NewYear {
get {
return ResourceManager.GetString("Greeting4NewYear", resourceCulture);
}
}
}

NET技術.NET的資源并不限于.resx文件,你可以采用任意存儲形式 [上篇],轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 超碰97超碰在线视频哦 | 花季v3.0.2黄在线观看 | 国产精品v片在线观看不卡 国产精品v欧美精品v日韩 | 久久4k岛国高清一区二区 | 亚洲精品视频在线观看免费 | 乌克兰女人与动ZOZO | 伊人综合在线22 | 亚洲AV国产国产久青草 | 午夜国产精品影院在线观看 | 先锋影音av无码第1页 | 欧美A级肉欲大片XXX | 99re久久热在线视频 | 9477小游戏| 国产成人亚洲精品午夜国产馆 | 99久久亚洲精品影院 | 亚洲国产精品嫩草影院 | 午夜不卡av免费 | 日本视频一区二区免费观看 | 99久久精品免费看国产一区二区 | 国产免费播放一区二区三区 | 美女扒开尿口直播 | 美女打开双腿扒开屁股男生 | 在线精品视频成人网 | 成人毛片免费观看视频大全 | 国产精品福利片 | 国产哺乳期奶水avav | 黄色天堂网站 | 曰本xxⅹ孕妇性xxx | 免费无码国产欧美久久18 | 国产精品久久久久激情影院 | 日本妈妈xxxx| 亚洲国产日韩欧美在线a乱码 | 牲高潮99爽久久久久777 | 久久看片网 | 羞羞答答的免费视频在线观看 | 且试天下芒果免费观看 | 无码任你躁久久久久久老妇双奶 | 国产MD视频一区二区三区 | 亚洲国产中文字幕在线视频综合 | 亚洲色噜噜狠狠网站 | 欧美亚洲高清国产 |