以下是否会加载我的XML文件

Ctr*_*eat 0 c# xml visual-studio-2010

我遇到以下问题 - 它似乎没有加载我的XML文件.我想加载文件,然后使用XMLNodeLlist迭代它并存储我的值.XML文件位于我的Visual Studio 2010解决方案中.路径中是否有我遗漏的东西?

XmlDocument xml = new XmlDocument();

public Test()
{

    xml.LoadXml(@"C:\Users\testuser\Desktop\TestWebsite\TestData.xml");
   ...more code
Run Code Online (Sandbox Code Playgroud)

And*_*ose 6

XmlDocument.LoadXml(stirng xml)不期望文件路径,而是实际的xml字符串.您可以使用XmlDocument.Load()并将FileStream传递给您的文档或文件路径:

XmlDocument xml = new XmlDocument();
xml.Load(@"C:\Users\testuser\Desktop\TestWebsite\TestData.xml");
// or
xml.Load(File.OpenRead(@"C:\Users\testuser\Desktop\TestWebsite\TestData.xml"));
Run Code Online (Sandbox Code Playgroud)

甚至比使用具有直接使用文件路径的加载方法的新XDocument对象更好,这是在.NET的更高版本中与Xml交互的首选方式,并建议使用此方法:

XDocument doc1 = XDocument.Load(@"C:\Users\testuser\Desktop\TestWebsite\TestData.xml", LoadOptions.None);
Run Code Online (Sandbox Code Playgroud)