簡體   English   中英

本地化混合應用程序的最佳策略:Razor、Angular、Typescript、.NET 和數據庫層

[英]Best strategy for localizing a mixed application: Razor, Angular, Typescript, .NET and database layer

我們的應用程序是以下各項的組合:

  1. 前端:Asp .NET,有 Razor 個頁面(父應用程序)和一些 Angular 頁面(顯示在 iFrame 中)以及 typescript。我知道這不是很好,但目的是將應用程序頁面慢慢遷移到 Angular 中編寫的 SPA
  2. 后端是.NET框架和.NET核心
  3. SQL 數據庫

上面的所有 3 層都有分散的字符串,這些字符串顯示在整個應用程序中。 我們迫切需要在接下來的幾個月內對應用程序進行本地化,主要是為了:

  1. 具有支持的本地化語言的用戶在從瀏覽器訪問時獲得本地化版本。 即德語 Chrome 獲取德語版本的應用程序。
  2. 用戶可以更改網站內的語言。

以上所有內容都應該動態發生(沒有單獨的語言構建),這意味着資源是動態加載的。

解決這個問題的最佳策略是什么? 我考慮過的一些項目:

  1. 使用 XLIFF 作為字符串的基本存儲。 這是一個通用標准,因此可以在構建期間運行工具以生成 .resx 和其他格式
  2. 使用 .resx 並使用 javascript 中的翻譯庫來訪問這些字符串(是否有這樣的庫可用)。 或者反過來 - 使用 xliff 和 .net 庫來讀取它。
  3. 數據庫 - 帶有語言列和 API 的字符串表,它計算出主要和后備語言。
  4. 其他策略,考慮到上述所有內容 - 我們必須進行就地遷移並在我們整合應用程序中的各種技術時使用上述解決方案。

這是您想在內部開發的東西還是您正在考慮第三方翻譯管理系統? 我討厭將這個問題用作宣傳我公司的論壇,但我確實想到我們在Localize采取的方法適用於您的情況。

基礎是我們構建了一個小部件,它解析出最終的 html 並根據用戶的區域設置和他們的語言選擇將字符串從一種語言替換為另一種語言。 這種方法意味着您使用哪個框架並不重要,因為我們只在生成(或在您的 SPA 代碼中修改)后解析 dom。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM