2010-01-14 68 views
0

我知道應用程序配置是用來提供過程變量的環境類型的值。它非常重視/價值導向。需要一個應用程序配置文件意見

但我有一個進程(Windows服務),使用骨架xml模板文件來處理後生成該文件的完整版本。

在應用程序配置文件中包含'skeleton xml'的想法如何?

我試圖aviod有一個獨立的xml骨架文件,因爲它是'配置'相關,在某種程度上。

回答

0

那麼,你可以

  • 要創建一個custom configuration section到config文件,並用其序列化版本工作
  • 要直接存儲XML在appSettings,編碼字符串
  • 要定義的文件路徑在appSettings,那裏,你的XML文件

如果你問我,我會去最後一個選項,因爲它更容易維護。

+0

第三個選項,然後作爲獨立的XML文件,通過應用程序配置文件? – Chris 2010-01-14 16:23:00

+0

是的克里斯;這更容易更新並且不需要應用程序池回收 – 2010-01-14 16:37:43

1

如果已經將XML序列化爲XML文本,例如將XML存儲在應用程序配置設置中,則很簡單。保存它,假設myXmlDocumentXmlDocument

Properties.Settings.Default.MyXmlSkeleton = myXmlDocument.OuterXml; 

,並找回它:

myXmlDocument.LoadXml(Properties.Settings.Default.MyXmlSkeleton); 

但你不會輕易能夠通過編輯配置文件來更改XML,因爲它將被保存爲XML文本,比如:

value='<MyXmlDocument/>' 

這可能不是一個問題,因爲你可能不會想編輯的應用程序結構F無論如何要改變XML--如果你這樣做的話,引入格式錯誤的風險太大了。

儘管如此,我發現這不是正確的方法;我將在運行時從文件系統加載XML,並將配置文件中的XML文檔路徑存儲,或者將XML作爲字符串資源包含在內。