如何使用条件选择构建LINQ到XML查询

本文关键字:XML 查询 LINQ 构建 何使用 条件 选择 | 更新日期: 2023-09-27 18:14:00

xml元素根据某些条件是可变的。我需要根据其他元素的值,用不同的元素初始化一个实例。

var result = (from name in names
   select new MyName
   {
      name.First  = name.Type = Fracais ? name.PreNom : name.First,
      name.Last 
   }

任何想法?

如何使用条件选择构建LINQ到XML查询

你得到的几乎是正确的。我不得不猜测枚举和成员,因为你没有提供其他类:

   var result = from name in names
                 select new Person()
                   {
                      First = name.Type == PersonType.Fracais ? name.PreNom : name.First,
                      Last = name.Last
                   };

您可以在linq查询中使用几乎任何表达式,包括函数调用,因此测试值并动态更改它们是完全可以接受的。

这个怎么样?作为一个毫无意义的选择。

var result = names.where(name => name.Type == Francais).Select(name =>
                                           name.PreNom, name.Last).Union()
    names.where(name => name.Type != Francais).Select(name.First, name.Last);