c# - LINQ to XML 返回一个对象而不是 IEnumerable<object>

标签 c# linq-to-xml

我有这个代码:

   MyObject Obj {get;set;}
    var x = from xml in xmlDocument.Descendants("Master")
        select new MyObject
        {
            PropOne = //code to get data from xml
            PropTwo = //code to get data from xml
        }

结果是var正在IEnumerable<MyObject> ,我需要使用 foreach循环分配 xObj :

foreach(var i in x)
{
    Obj = i;
}

有没有一种方法可以使用 LINQ 语句而不用 IEnumerable以这种方式返回?或者使用 foreach 是否正常?像我这样循环?

最佳答案

是的:

Obj = (from xml in xmlDocument.Descendants("Master")
        select new MyObject
        {
            PropOne = //code to get data from xml
            PropTwo = //code to get data from xml
        }).FirstOrDefault();

关于c# - LINQ to XML 返回一个对象而不是 IEnumerable<object>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10439776/

相关文章:

c# - ElasticSearch搜索结果不佳

c# - 视频文件的 GET 请求已取消。找不到视频

c# - RabbitMQ - 主题交换和竞争消费者

c# - LINQ-to-XML 中 XSD.EXE 的替代方案?

c# - 如何获取小部件的索引以及为什么它只给出第一个值

c# - ':'字符,十六进制值0x3A,不能包含在名称中

c# - 直接从 linq 查询返回类

c# - 使用 Entity Framework 的 sql IN 子句的动态 linq 查询表达式树

c# - XElement.Load ("~/App_Data/file.xml") 找不到路径的一部分

c# - 包括来自类库的服务引用