Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 您最喜欢的读取XML文件的方式是什么?_C#_Xml_Linq To Xml - Fatal编程技术网

C# 您最喜欢的读取XML文件的方式是什么?

C# 您最喜欢的读取XML文件的方式是什么?,c#,xml,linq-to-xml,C#,Xml,Linq To Xml,让我们以这个xml结构为例: <?xml version="1.0" encoding="utf-8"?> <Configuration-content> <XFile Name="file name 1" /> <XFile Name="name2" /> <XFile Name="name3" /> <XFile Name="name4" /> </Configuration-content>

让我们以这个xml结构为例:

<?xml version="1.0" encoding="utf-8"?>
<Configuration-content>
  <XFile Name="file name 1" />
  <XFile Name="name2" />
  <XFile Name="name3" />
  <XFile Name="name4" />
</Configuration-content>
我想知道最好的方法是什么


任务是使用您最喜欢的方法实现
IConfigurationRipository

有什么理由不使用


DataContractSerializer>LinqToXml>>XML序列化器>>字符串操作>>RegEx

对于简单的XML格式,最简单的方法是使用数据集对象(.readXML())。下面是一个简单的示例应用程序,它可以做到这一点,并以树/网格格式显示数据集内容:
. 以下是该程序的源代码:。

如果我们有LinqToXml,为什么要使用它?@Tuzo:没有对XML序列化进行错误修复,而且它非常有限。这是否意味着DataContractSerializer是您的最佳选择?如果是这样,请使用它来实现。XAML序列化解决方案可能非常有趣!但我不确定写作是否也有好处。
public class Configuration
{
    public XFile[] Files { get; set; }
}

public interface IConfigurationRipository
{
    Configuration Get();
    void Save(Configuration entity);
}
using (Stream myStream = new FileStream(fileName, FileMode.Open))
{
    XmlSerializer xs = new XmlSerializer(typeof(XConfiguration));
    XConfiguration config = xs.Deserialize(myStream) as XConfiguration;
}