2012-01-20 29 views
9

我試圖通過右鍵單擊文件 - >構建操作 - >嵌入式資源,將XML文件嵌入到C#控制檯應用程序中。在C#控制檯應用程序中使用嵌入式資源

我該如何訪問這個嵌入式資源?

XDocument XMLDoc = XDocument.Load(???); 

編輯:大家好,不顧一切撲收到了這個問題,這裏有一個更新。

我設法得到它的工作通過使用

XDocument.Load(new System.IO.StreamReader(System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceStream("Namespace.FolderName.FileName.Extension"))) 

,因爲沒有包括含項目中的資源文件的文件夾名稱以前不工作(沒有的我發現的例子似乎有)。

謝謝大家誰試圖幫助。

+2

您的意思是像[this](http://support.microsoft.com/kb/319292)或[這些可能的重複項目](https://www.google.com/#sclient=psy-ab&hl = EN&源= HP&q =存取+嵌入式+資源+ C%23 +站點:stackoverflow.com&PBX = 1&OQ =存取+嵌入式+資源+ C%23 +站點:stackoverflow.com&水溶液= F&AQI =&AQL =&gs_sm = E&gs_upl = 3304l10983l0l11177l29l26l2l0l0l0l384l5613l1.14.7 .4l28l0&BAV = on.2,or.r_gc.r_pw。,cf.osb&FP = 4fe41488848db57f&BIW = 1366&波黑= 677)? –

+0

可能的重複[如何發現嵌入式資源的「路徑」?](http://stackoverflow.com/questions/27757/how-can-i-discover-the-path-of-an-embedded-資源) –

+1

正是我在找的東西。不幸的是,它因爲本地化而關閉。 –

回答

10

東西沿着這些線路

using System.IO; 
using System.Reflection; 
using System.Xml; 

namespace ConsoleApplication1 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream("ConsoleApplication1.XMLFile1.xml"); 
      StreamReader reader = new StreamReader(stream); 

      XmlDocument doc = new XmlDocument(); 
      doc.LoadXml(reader.ReadToEnd()); 
     } 
    } 
} 

這裏是一個描述如何做到這一點的微軟文檔的鏈接。 http://support.microsoft.com/kb/319292

相關問題