Dynamics 365(online) V9.0 new features for developers(三:Web 資源本地化)
本篇是9.0版本針對開發者新變化系列的第三篇,介紹9.0版本新加的web資源的本地化支援,這個其實也是9.0 new features之一,但為何不放在new features系列裡而放在new features for developers系列裡,因為本篇要講的內容和上一篇的web資源的依懶性有關,所以索性就放在了new features for developers系列了。
CRM一直是支援多語言的,但它的多語言也只是針對系統的自有功能和欄位標籤等,針對客製化的指令碼或者html中的內容是無法做到多語言支援的,舉個最簡單的例子,銷售訂單上的一個提交按鈕,提交後會有個提交成功的提示,拿中英文雙語來說,目前的做法是判斷登入使用者的語言是2052還是1033,然後決定是提示顯示"提交成功"還是"Submit Success",那如果語言一多就是災難了。
那9.0版本新增的web資源型別"字串resx"就能很好的解決這個問題,具體如何解決的呢,我們一起來看下。
首先我們需要新建一個resx的檔案,開啟visual studio,add一個new item,搜尋resource file
點選右下方的add之後會開啟像下圖這樣的一個鍵值對的框,我屬於本示例中用到的Title和對應的中文Value"展示Resx示例",以及另外個英文的Value"ShowResxDemo",注意這裡一種語言是一個檔案(本示例是兩個檔案對應2052中文1033英文),當然一種語言你也可以搞多個檔案。
建完檔案後我們回到CRM的web resource,新建一個型別是"字串RESX"的檔案,並上傳我們剛才在visual studio中新建的resx檔案,注意web資源的命名格式,名稱點語言id點resx,檢視下面兩張圖,名稱要保持一致,因為後面講程式碼呼叫的時候會用到。
前期準備工作做完了,下面準開始使用了,開啟我們的js檔案,新增依賴項(這塊不理解,請移步上一篇),這塊檢視的是resx的web資源,別再預設的javascript的web資源裡找,找到後新增上
我們在語言程式碼那列就能清晰的看到對應的語言
然後再看下程式碼,注意下前面我說過的名稱,此處傳的名稱值是new_resxdemo,和我上面對應下
function GetResourceString(webResourceName, key) {
return Xrm.Utility.getResourceString(webResourceName, key);
}
function TestFax(executionContext)
{
var Title= GetResourceString("new_resxdemo", "Title");
alert(Title);
}
最後看下效果,當使用者語言是中文時提示中文,當使用者語言是英文時切換英文(其他語言同理),只要一個GetResourceString方法就搞定了,不再需要以前的根據登入使用者語言id來判斷了。
相關文章
- Dynamics 365(online) V9.0 new features for developers(二:JavaScript Web 資源依賴性)DeveloperJavaScriptWeb
- Dynamics 365(online) V9.0 new features for developers(四:自動編號)Developer
- Dynamics 365(online) V9.0 new features(五:sitemap)
- Dynamics 365(online) V9.0 new features(六:移動端支援 iFrame 和 Web 資源)Web
- Dynamics 365(online) V9.0 new features for developers(一:客戶端 API 增強功能)Developer客戶端API
- Dynamics 365(online) V9.0 new features(八:虛擬實體)
- Dynamics 365(online) V9.0 new features(三:新增兩個系統主題)
- Dynamics 365(online) V9.0 new features(四:多選選項集)
- Dynamics 365(三)WEB資源使用Web
- Dynamics 365(online) V9.0 new features(七:高階查詢中相關實體的不包含查詢支援)
- Dynamics 365(online) V9.0 new features(一:表單窗體裡的自定義sub-grid表頭顏色)
- Dynamics 365(online) V9.0 new features(二:允許在窗體欄位標籤和值中進行文字換行)
- Dynamics 365(online) V9.0 No more monolithic SDK download(所有資料均採用線上模式)Mono模式
- Dynamics 365 Web API模擬使用者WebAPI
- Dynamics 365 Web API 批處理(batch requests)WebAPIBAT
- Dynamics 365 Web API Set Values of all Data Types using Web API in Dynamics CRM Through C#WebAPIC#
- Dynamics 365 Online和On-premises在開發方式上的差別REM
- Difference between Microsoft Dynamics 365 WEB API, Organization Service and Organization Data ServicROSWebAPI
- Dynamics 365 Online 利用Microsoft Flow實現自動建立Sharepoint LocationROS
- Dynamics 365 Portal如何清除快取快取
- ABAP New Features - Internal Tables
- GNU grep's new features
- Dynamics 365 Online 匯入解決方案託管實體無法同步的問題
- Dynamics 365 Web Api 建立與更新返回記錄ID及更新後的資料記錄WebAPI
- Dynamics 365(on-premises) Portal 的安裝REM
- Dynamics 365 控制右側欄的介面
- Some new features in 11g
- Dynamics 365 Web Api 檢查使用者是否具有某個安全形色WebAPI
- Oracle SQL Developer New Features in Release 4OracleSQLDeveloper
- what is the new features of Flash CS5?
- Oracle10g New Features(1)Oracle
- Keep an eye on these 5 new features in RHEL 7
- Professional JavaScript for Web DevelopersJavaScriptWebDeveloper
- 如何將Dynamics CRM 2016(on-premises)升級到Dynamics 365(on-premises)REM
- Dynamics 365 基於ADFS 2016(4.0)的OAuth2 CRM Web API RequestOAuthWebAPI
- Dynamics 365中的Client API form context (formContext)clientAPIORMContext
- 1 Oracle Database Release 20c New FeaturesOracleDatabase
- PostgreSQL DBA(4) - PG 11 New Features#1SQL