如何在c#文件中使用XML而不是使用外部XML文件

本文关键字:XML 文件 外部 | 更新日期: 2023-09-27 18:18:37

我有一个xml文件,目前在c#代码外部,它是这样加载的:

var xElem = XElement.Load("ProductTable.xml");

我如何"使用"这个文件作为我的c#代码中的"嵌入"元素,而不是把它作为一个外部文件?

我知道我对"使用"answers"嵌入"这两个词不够清楚。我要做的是把它用作某种变量,比如

var myXML = /* content of the XML file here */;

,这样我就不必使用外部xml文件。谢谢。

如何在c#文件中使用XML而不是使用外部XML文件

项目中有一个资源文件。把它拖到那里,你就可以访问它了。另一种方法是将该文件添加到项目中,然后单击属性,将编译方法设置为emedded,然后执行如下操作

try
   {
      _assembly = Assembly.GetExecutingAssembly();
      _imageStream = _assembly.GetManifestResourceStream("MyNamespace.MyImage.bmp");
      _textStreamReader = new StreamReader(_assembly.GetManifestResourceStream("MyNamespace.MyXmlFile.xml"));
   }
   catch
   {
      MessageBox.Show("Error accessing resources!");
   }

将XML文件添加到项目中。将其生成设置(在解决方案资源管理器的属性中)设置为嵌入式资源。然后你可以用…

 var asm = Assembly.GetExecutingAssembly();
 using (var sr = new StreamReader(asm.GetManifestResourceStream("YourNamespace.ProductTable.xml")))
 { /* ... */ }

你可能会想要使用XmlReader或者不管他们现在叫它什么。

源自How embed and access…从MSDN。