C# 如何使用linq从xml文件中的单个项创建对象?
基本上,我在xml文件中有一个元素,用于存储应用程序的设置。这个元素反映了我构建的一个类。我尝试使用LINQ做的是选择单个元素,然后将存储在该元素中的值存储在单个语句中的类实例中C# 如何使用linq从xml文件中的单个项创建对象?,c#,xml,linq,linq-to-xml,C#,Xml,Linq,Linq To Xml,基本上,我在xml文件中有一个元素,用于存储应用程序的设置。这个元素反映了我构建的一个类。我尝试使用LINQ做的是选择单个元素,然后将存储在该元素中的值存储在单个语句中的类实例中 现在我分别选择元素,然后将该元素的值存储到不同的属性中。当然,这会变成六种不同的说法。是否可以在一条语句中执行此操作?如果可以显示XML,则效果会更好,但您可以从下面的代码中获得大致的想法 XDocument doc = //load xml document here var instance = from ite
现在我分别选择元素,然后将该元素的值存储到不同的属性中。当然,这会变成六种不同的说法。是否可以在一条语句中执行此操作?如果可以显示XML,则效果会更好,但您可以从下面的代码中获得大致的想法
XDocument doc = //load xml document here
var instance = from item in doc.Descendants("ElementName")
select new YourClass()
{
//fill the properties using item
};
如果您可以显示您的XML,这会更好,但您可以从下面的代码中获得大致的想法
XDocument doc = //load xml document here
var instance = from item in doc.Descendants("ElementName")
select new YourClass()
{
//fill the properties using item
};
您可以使用LINQ转换XML,例如
var document = XDocument.Load("myxml.xml");
document.Element("rootElement").Element("myElement").Select(e =>
new MySettingsClass
{
MyProperty = e.Attribute("myattribute").Value,
MyOtherProperty = e.Attribute("myotherattribute").Value
});
有关更多详细信息,请参阅。您可以使用LINQ to XML,例如
var document = XDocument.Load("myxml.xml");
document.Element("rootElement").Element("myElement").Select(e =>
new MySettingsClass
{
MyProperty = e.Attribute("myattribute").Value,
MyOtherProperty = e.Attribute("myotherattribute").Value
});
有关更多详细信息,请参阅