2011-04-05 59 views
8

我有一個WPF應用程序,其中包含3個項目來表示3層體系結構。一個項目被設定爲主項目。我在其中一個非主項目中有一些XML文件。這些XML文件可以通過在該項目的類中定義的函數來訪問。部署WPF應用程序時包含xml文件

當我嘗試使用VS2010 ClickOnce發佈應用程序時,甚至在將文件的構建操作標記爲「內容」和「複製到輸出目錄」爲「始終複製」之後,XML文件未包含在安裝文件中。當運行已安裝的應用程序時,應用程序報告找不到文件。我可以在由ClickOnce生成的安裝文件夾中看到一個Application_Files文件夾,但它不包含XML文件。

所以,我的問題是如何將XML文件包含在安裝文件夾中,並在運行應用程序時獲取它們的位置URL。

感謝, 納文

更新1: 應用解決方案結構由三個項目,說P1,P2和P3的。 P3是主要的啓動項目。 P1和P2是類庫項目。 XML文件被添加到P2項目中。這些文件被標記爲Build Action - > Content and Copy - > Always Always。但是,發佈應用程序時,這些文件不會通過ClickOnce複製到應用程序的數據文件夾中。

回答

1

有一個2個位置的ClickOnce用途:

  • 主可執行文件和所有必需的dll的
  • 一切的位置的位置是不可執行的,即資源,像你的XML

所以你有一個應用程序目錄和一個數據目錄。解決應用程序目錄仍然可以像這樣完成AppDomain.CurrentDomain.BaseDirectory

但是,如果你想要解決數據目錄,你需要一些特定的clickonce:ApplicationDeployment.CurrentDeployment.DataDirectory

我不確定你是否檢查過數據目錄,因爲你沒有在你的文章中提到它。

+1

謝謝。我試着給數據目錄尋址。但是這個問題似乎是在發佈應用程序時XML文件本身沒有被複制。如果我在主項目下有XML文件,它們將被複制到由ClickOnce創建的文件夾中。但我的XML文件不在主項目中;它們被添加到非主項目中。我用安裝文件檢查了該文件夾,但找不到我的任何XML文件。 – naveen 2011-04-05 07:13:08

6

簡單的解決方案。 右鍵點擊您要發佈的yo項目文件。 選擇屬性。 然後在打開的窗口中選擇發佈。 點擊Apllication files按鈕。 在那裏,找到yo .xml文件,默認情況下它將是'數據文件'類型。將其更改爲包含。 保存重建併發布它。

希望它可以幫助需要它的人。

相關問題