我們在我們的應用程序中使用了很多配置文件。每個客戶至少有100個不同的xml文件,其中至少包含50-80個名稱/值配置對,並且他們通常都會更改(至少每個月)。在.NET中鍵入配置值/變量
配置文件類似於像下面的東西,
<property id="url" value="s123"/>
<property id="input-element-name" value="name" />
<property id="input-element-xpath" value="//body;//form;//table[3];" />
目前來讀取XML文件中,我們使用的XmlReader等這個值,並將其存儲在緩存中,一旦應用程序啓動(這可能是巨大的明天當我們的客戶羣增加時)。要訪問屬性ID,我們在靜態類中創建了const變量以避免錯字等,
當我們的配置較少時,這種方法非常棒。現在,維護和添加任何新的配置文件是很痛苦的。需要重建等,只是殺死了保持代碼外的可配置值的概念。
我只是想知道,如果任何.NET空間的最新發展,如M語言,IronPython可以幫助在這裏有配置文件被更改時按需動態鍵入和編譯配置值。我們對xml格式的配置沒有任何保留。總之,我需要的是有一些.XXX文件具有我們的配置值,如果有什麼更改或添加,應該自動編譯,並可以在我們的應用程序中使用,而不創建常量等,我知道類似的東西在VS中發生.T文件。
我希望這可能是可行的..
UPDATE
這個問題的想法是不似乎是正確理解或者我也不會正確讀出。抱歉,添麻煩了。
自定義配置部分可能不適合這個問題,原因是使用ConfigurationSection
需要修改代碼,如果我添加任何新的名稱/值對。但是,如果僅在名稱部分映射到代碼中的屬性時更改值,則此方法纔有效。
我想知道如果我使用任何動態語言品種,如IronPython或M語言,我可以將所有XML移動到它並在我的應用程序中,我將能夠看到此文件的任何更改(使用`FileSystemWatcher')並執行它以讀取新添加的配置名稱/值對。
我覺得你有你的答案X 4在2分鐘平坦,瓦迪。 –
這就是SO – asyncwait