2010-09-17 54 views
2

我需要爲我們的Web應用程序中的所有文本設計一個可配置的內容系統,它將我們對翻譯的需求與用戶組,用戶子組和單個用戶配置給定標籤,錯誤消息或系統文本片段的內容。ASP.NET中的可配置內容系統

因爲一切都需要通過接口進行配置,所以資源文件似乎不是解決方案。

我不希望在盒子裏找到這樣的東西。你會如何去設計類似的東西,或者你會開始配置什麼來獲得這個功能?

回答

1

我已通過創建數據庫支持的自定義資源提供程序並將Web.Config中的<globalization>標記設置爲指向您的自定義提供程序來實現您正在尋找的功能類型。請參閱:http://msdn.microsoft.com/en-us/library/aa905797.aspx

然後在您的頁面和代碼中,您可以參考GetGlobalResourceObjectGetLocalResourceObject獲取本地化資源。

雖然這主要是爲多種語言設計的,但我已將它與自定義語言環境功能結合使用,爲不同用戶組提供不同的標籤,錯誤消息和文本。

1

沿行創建一個簡單的表:

table Resources { 
    language varchar(100) 
    label varchar(100) /* you might consider a different key type, but this would be easiest on coding */ 
    value varchar(max) 
} 

你可能只是緩存Web服務器上的整個表在本地執行的外觀跌宕當值改變簡單地到期緩存。

這是一件相對容易的事情。

+1

確保您使用的是UTF8編碼。沒有什麼比編碼問題更糟糕了 – citronas 2010-09-17 19:33:55