2017-08-25 102 views
0

我們在web.config文件和數據庫中都存儲了密鑰和配置值(這些值不會非常頻繁地更改)。然而,這種方法很難維護,很多問題都會發生。將配置密鑰存儲在具有配置模式的資源文件中

我想解決這些問題。他們中的大多數是固定的,其中一些取決於配置模式。

我們可以將這些密鑰存儲在resx文件中並像全球化一樣使用它們嗎?我的意思是,就像在MVC中一樣,我們可以根據自定義條件(如瀏覽器和其他任何東西)使用單獨的視圖。

使用面向對象的知識,它可能是(如我們可以創建一個資源工廠,並根據活動配置模式服務資源)。但是如果沒有努力和犧牲設計時支持,是否還有其他方法?

回答

1

Resx文件適用於像字符串和圖像等資源 如果只有配置存儲在數據庫中並且配置服務返回每個環境/配置模式下的配置,它將會更乾淨。到正確的配置服務。

+0

是的你是對的,他們是爲了存儲這些類型的東西。但是,當我們將這些配置字符串存儲在數據庫中並通過服務/工廠通過鍵訪問它們時,我們犧牲了對c#本地化服務(如GlobalResources.BlaBla.MyKey)的強類型訪問。但這些似乎也是中型情景。 –

+0

對於訪問,服務應該最好使用像Dapper等ORM從數據庫中讀取數據,並將其序列化爲JSON/XML,然後將其反序列化爲客戶端/客戶端上的第一類對象。 –

+0

你沒有得到那裏的線索;我們不想犧牲強類型訪問這些資源的能力。無論如何,我發現一些庫在基於數據庫的運行時動態生成resx文件。我會在他們中間作出決定...... –