2012-08-31 56 views
0

在此先感謝,我知道這是非常重複和非常多問的問題,但我沒有得到任何適當的解決方案,我指的是大量的網站這個。asp.net與C#多語言支持網站,記錄來自SQL Server

問題:我正在開發和訂購網站,需要多種語言支持,如英語,西班牙語,法語,阿拉伯語和近10種語言。我怎樣才能管理從CSS到圖像的所有事情,從數據庫抓取記錄很多東西都在我的腦海中設置的東西。

我可以用一個解決方案,我可以在表中每種語言創建場像說明我需要保持申請英語,西班牙語這樣的....

什麼是使用動態語言翻譯的最佳途徑沒有使用任何第三方工具。

請告訴我解決方案。

如果你沒有得到我的問題,請問我。

我需要絕望的幫助提前

感謝

回答

1

您可以根據本地化和全球化工作

鏈接:http://msdn.microsoft.com/fr-fr/library/ms247246%28v=vs.100%29.aspx

爲了開始,你可以測試論文功能

Generating Default Resource File : 

在Visual Studio設計器中,單擊設計器表面或控件。

選擇工具 - >生成本地資源

的XML - 在使用文本和工具提示 值頁面上的所有現有的控件App_LocalResources文件夾中的網頁基於本地資源文件,以及頁面標題將被生成。

Generating Resource Files for Other Cultures: 

在Solution Explorer中

右鍵單擊 '爲Default.aspx.resx' 文件,然後單擊複製

右鍵單擊App_LocalResources文件夾,然後單擊粘貼

右鍵單擊「 Default.aspx.resx的副本「並單擊重命名

爲包含新語言和區域性代碼的資源文件鍵入新名稱e擴展名。

+0

我的內容怎麼樣,我需要用每種語言保存每個字段的所有內容? – Yagnesh

+0

是爲了翻譯爲不同的語言 –

0

就數據庫而言,解決方案是您將擁有一個Languages表,並且您的每個用戶都將擁有一個針對其記錄的數據庫語言,或者用戶可以從頁面上的下拉列表中選擇語言。所有喜歡我的實體表說,UserStatusUserTypes等將有一個相關的郎表所示:UserStatus_Lang,其將持有的特定語言的文本,如:

UserStatus Table 
UserStatusId 
1 

UserStatus_Lang 
UserStatusId_FK LangId_FK Text 
1     1   Online 
1     2   ****** 

同時節約您將節省實體表,但同時標識顯示你將從_Lang表中顯示文字。

比像網頁標籤等控件,您將創建一個表Pages,將舉行您的網頁頁面名稱,而不是另一個表PageControls握住你的頁面上,比另一個表PageControlsText將舉行語言存在控制針對頁面控件的特定文本。在Page_Init事件中,您將從數據庫中獲取頁面控件及其文本(根據所選語言),並通過在頁面上搜索頁面控件來設置頁面控件的文本。

我希望你對這個實現有一些瞭解。修改================== =================

頁表

PAGEID  PAGENAME [OTHER COLUMNS] 

PAGE控件表

PAGECONTROLID  PAGEID_FK PAGECONTROLNAME [OTHER COLUMNS] 

PAGE控制文本TABLE

PAGECONTROLID_FK  LANGID_FK  PAGECONTROLTEXT 

就你的描述而言,你將不得不做我t等在2個表 TABLE1

ID   ITEM_NAME 

比另一臺TABLE1_LANG

ID_FK  LANGID_FK  DESCRIPTION 

通過使用這種方法,你不會需要修改你的結構,當新的語言系統中的介紹。

+0

你要我在數據庫保存控制的名字嗎?內容讓我給你例如我添加一個表,如 _______________________ ID ITEM_NAME DESCRIPTION _______________________ 我是否需要保存所有語言DESC_ENG DESC_ARABIC等特殊字段的描述...? – Yagnesh

+0

我已經在我的答案增加了一節修改,懇請檢查您的回答,是的,你必須保存在數據庫控件名稱。 –

+0

我進入脫機狀態,所以將不能夠在一段時間回覆,讓我說,你有任何疑問,當我上網會作出迴應。 –