欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
ASP.NET網(wǎng)站國際化策略
 

1          問(wèn)題提出

現在很多網(wǎng)站項目開(kāi)發(fā)要求同時(shí)支持多國語(yǔ)言,所以在用戶(hù)界面及程序的設計和開(kāi)發(fā)中需采取國際化策略,以達到代碼改動(dòng)量小、網(wǎng)站部署便利,用戶(hù)群廣泛的目的。

 

2          解決策略

.NET Framework 為開(kāi)發(fā)全球通用的應用程序提供了廣泛的支持。在開(kāi)發(fā)全球通用的應用程序時(shí),此過(guò)程分為三個(gè)步驟:全球化、本地化分析和本地化。

 



2.1          全球化

在這一步中將編寫(xiě)應用程序的可執行代碼。一個(gè)真正的全球化應用程序應是非特定區域性和非特定語(yǔ)言的。因此,應集中精力創(chuàng )建能夠支持適用于所有用戶(hù)的本地化用戶(hù)界面和區域數據的應用程序。注意,盡管全球化應用程序具有這種靈活性,但全球化過(guò)程本身并不涉及用戶(hù)界面的翻譯。相反,應致力于使創(chuàng )建的應用程序具有對來(lái)自應用程序所支持的所有區域性和地區的用戶(hù)均有效的功能。

 

2.2       本地化分析

本地化分析是一個(gè)中間過(guò)程,用于驗證全球化應用程序是否已準備好進(jìn)行本地化。如果應用程序的可執行代碼已經(jīng)同應用程序的可本地化資源明顯分開(kāi),則此應用程序就可以開(kāi)始進(jìn)行本地化。公共語(yǔ)言運行庫的附屬程序集資源模型完全支持這種代碼同資源的分離??蓤绦写a位于應用程序的主程序集中,只有資源位于應用程序的資源文件中。

 

2.3       本地化

本地化是針對應用程序支持的每一個(gè)區域性將應用程序的資源翻譯為本地化版本的過(guò)程。只有在完成了本地化分析步驟,證實(shí)了全球化應用程序可以開(kāi)始進(jìn)行本地化之后,才應繼續到本地化階段。

可以開(kāi)始進(jìn)行本地化的應用程序分為兩個(gè)概念塊:一個(gè)是包含所有用戶(hù)界面元素的塊,另一個(gè)是包含可執行代碼的塊。用戶(hù)界面塊僅包含非特定區域性的可本地化用戶(hù)界面元素,如字符串、錯誤信息、對話(huà)框、菜單、嵌入的對象資源等。代碼塊僅包含由所有支持的區域性使用的應用程序代碼。公共語(yǔ)言運行庫支持一個(gè)附屬程序集資源模型,該模型將應用程序的可執行代碼同其資源分開(kāi)。

要獲取應用程序的每個(gè)本地化版本,可添加新的附屬程序集(包含翻譯成適當目標區域性語(yǔ)言的本地化用戶(hù)界面塊)。所有區域性的代碼塊應保持相同。用戶(hù)界面塊的本地化版本與代碼塊的組合產(chǎn)生應用程序的本地化版本。

 

3          國際化應用程序時(shí)應遵循的最佳做法

 

3.1       全球化最佳做法

1)       在內部使應用程序代碼成為 Unicode。

2)       使用 System.Globalization 命名空間提供的區域性識別類(lèi)來(lái)操作和格式化數據。

         對于排序,使用 SortKey 類(lèi)和 CompareInfo 類(lèi)。

         對于字符串比較,使用 CompareInfo 類(lèi)。

         對于日期和時(shí)間的格式化,使用 DateTimeFormatInfo 類(lèi)。

         對于數字的格式化,使用 NumberFormatInfo 類(lèi)。

         對于公歷和非公歷,使用 Calendar 類(lèi)或特定 Calendar 實(shí)現之一。

3)       在適當的情況使用 System.Globalization.CultureInfo 類(lèi)提供的區域性屬性設置。使用 CultureInfo.CurrentCulture 屬性來(lái)執行格式化任務(wù),如日期和時(shí)間或數字的格式化。使用 CultureInfo.CurrentUICulture 屬性檢索資源。請注意,CurrentCulture 和 CurrentUICulture 屬性可以基于每個(gè)線(xiàn)程來(lái)設置。

4)       通過(guò)使用 System.Text 命名空間中的編碼類(lèi),使應用程序能夠與各種編碼相互進(jìn)行數據讀寫(xiě)。不要采用 ASCII 數據。假定在用戶(hù)可以輸入文本的任何位置都將提供國際字符。例如,在服務(wù)器名、目錄、文件名、用戶(hù)名和 URL 中接受?chē)H字符。

5)       使用 UTF8Encoding 類(lèi)時(shí),由于安全原因,建議您使用此類(lèi)提供的錯誤檢測功能。要打開(kāi)錯誤檢測功能,請使用帶有 throwOnInvalidBytes 參數的構造函數創(chuàng )建該類(lèi)的實(shí)例,并將 throwOnInvalidBytes 的值設置為 true。

6)       盡可能將字符串按整個(gè)字符串處理,而不是按一系列個(gè)別字符處理。這在排序或搜索子字符串時(shí)尤為重要。這可以防止與分析組合字符有關(guān)的問(wèn)題。

7)       使用 System.Drawing 命名空間提供的類(lèi)來(lái)顯示文本。

8)       為保持操作系統間的一致性,不要允許用戶(hù)設置重寫(xiě) CultureInfo。使用接受 useUserOverride 參數的 CultureInfo 構造函數,并將該參數設置為 false。

9)       在國際操作系統版本上使用國際數據來(lái)測試應用程序功能。

10)    如果安全決策基于字符串比較或大小寫(xiě)更改操作的結果,請通過(guò)顯式指定 CultureInfo.InvariantCulture 屬性執行不區分區域性的操作。這種做法確保結果不會(huì )受 CultureInfo.CurrentCulture 的值的影響。有關(guān)說(shuō)明不區分區域性的字符串比較如何產(chǎn)生不一致結果的示例,請參見(jiàn)自定義大小寫(xiě)映射和排序規則。

 

3.2       本地化最佳做法

1)       將所有可本地化的資源移動(dòng)到單獨的純資源 DLL 中??杀镜鼗馁Y源包括用戶(hù)界面元素,如字符串、錯誤信息、對話(huà)框、菜單以及嵌入的對象資源。

2)       不要對字符串或用戶(hù)界面資源進(jìn)行硬編碼。

3)       不要將不可本地化的資源放在純資源 DLL 中。否則會(huì )使翻譯人員產(chǎn)生困惑。

4)       不要使用在運行時(shí)從串聯(lián)詞組生成的復合字符串。復合字符串難以本地化,因為它們往往采用英語(yǔ)語(yǔ)法順序,而此順序并不適用于所有語(yǔ)言。

5)       避免不明確的構造,如“Empty Folder”,因為根據字符串組成部分的語(yǔ)法規則,這些字符串可能產(chǎn)生不同的翻譯。例如,“empty”既可以是一個(gè)動(dòng)詞,也可以是一個(gè)形容詞,因此在諸如意大利語(yǔ)或法語(yǔ)等語(yǔ)言中就可能導致不同的翻譯。

6)       避免在應用程序中使用包含文本的圖像和圖標。本地化這些圖像和圖標的成本是很大的。

7)       允許在用戶(hù)界面中為字符串長(cháng)度的擴展保留足夠的空間。在某些語(yǔ)言中,詞組可能另外需要百分之五十到百分之七十五的空間。

8)       數據庫設計時(shí)為字符串類(lèi)型字段的其他語(yǔ)言版本留夠長(cháng)度

9)       使用 System.Resources.ResourceManager 類(lèi)根據區域性檢索資源。

10)    安排進(jìn)行專(zhuān)業(yè)本地化工作(翻譯)。

 

3.3       ASP.NET 應用程序的全球化最佳做法

1)       在應用程序中顯式設置 CurrentUICulture 和 CurrentCulture 屬性。不要依賴(lài)于默認設置。

2)       請注意,ASP.NET 應用程序是托管應用程序,因此可以使用與其他托管應用程序相同的類(lèi),以根據區域性檢索、顯示和操作信息。

3)       注意在 ASP.NET 中可以指定以下三種編碼類(lèi)型:

         requestEncoding 指定從客戶(hù)端瀏覽器接收的編碼。

         responseEncoding 指定要發(fā)送到客戶(hù)端瀏覽器的編碼。在大多數情形下,這應與 requestEncoding 是相同的。

         fileEncoding 指定用于 .aspx、.asmx 和 .asax 文件分析的默認編碼。

4)       在 ASP.NET 應用程序中的以下三個(gè)位置指定 requestEncoding、responseEncoding、fileEncoding、culture 和 uiCulture 屬性的值:

         在 Web.config 文件的全球化一節中。此文件是 ASP.NET 應用程序的外部文件。有關(guān)更多信息,請參見(jiàn) <globalization> 元素。

         在頁(yè)面指令中。請注意,當應用程序在頁(yè)面中時(shí),文件已經(jīng)被讀取。因此,指定 fileEncoding 和 requestEncoding 為時(shí)已晚。只有 uiCulture、Culture 和 responseEncoding 可以在頁(yè)面指令中指定。

         在應用程序代碼中以編程方式指定。該設置可能隨請求的不同而不同。同頁(yè)面指令一樣,到打開(kāi)應用程序代碼時(shí),指定 fileEncoding 和 requestEncoding 為時(shí)已晚。只有 uiCulture、Culture 和 responseEncoding 可以在應用程序代碼中指定。

5)       請注意,UICulture 可以設置為瀏覽器接受語(yǔ)言。

本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
Asp.net中實(shí)現多語(yǔ)言
網(wǎng)站如何知道瀏覽器的用戶(hù)在使用什么語(yǔ)言?
軟件測試概論
ios APP軟件多國語(yǔ)言切換,國際化app
譯技術(shù) | 微軟語(yǔ)言門(mén)戶(hù)資料:IT行業(yè)本地化的好工具
介紹基于 .NET Framework 的國際應用程序
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久