2016-03-14 90 views
-2

我做了一些搜索,但我無法弄清楚如何做到這一點。將列表數據添加到列表(LINQ?)在C#

我在C#中有兩個列表。

public class ETransaccion 
    { 
     public int Sistema { get; set; } 
     public int Caja { get; set; } 
     public int Tienda { get; set; } 
     public int Lapos { get; set; } 
     public int Visadebito { get; set; } 
     public int Amex { get; set; } 
     public int Visa { get; set; } 
     public int Credencial { get; set; } 
     public int Nvisa { get; set; } 
     public int Maestro { get; set; } 
     public int Cabal { get; set; } 
     public int Tshop { get; set; } 
     public int Credial { get; set; } 
     public int Master { get; set; } 
     public int Italcred { get; set; } 
     public int Tshopvisa { get; set; } 
     public int Diners { get; set; } 
     public int Naranja { get; set; } 
     public int Seriepinpad { get; set; } 
    } 

public class EPinpads 
    { 
     public int Tienda { get; set; } 
     public int Sistema { get; set; } 
     public int Caja { get; set; } 
     public int Seriepinpad { get; set; } 
    } 

所以我需要插入的EPinpads列表Seriepinpad屬性匹配Sistema的,卡哈和蒂達的ETRansaccion列表。

我想我可以使用LINQ來做這件事,但網上的東西沒有多大幫助。

+0

'ETransaccion.Seriepinpad = ETransaccion.Sistema'?不能真的讓你的問題!? – C4u

+0

所以要清楚,你有一個ETransaccion列表和一個EPinpads列表。你想創建一個第三個列表,其中包含來自ETransaccion的所有信息的記錄,並添加Seriepinpad信息以及Tienda,Sistema和Caja數據匹配的位置? – sr28

回答

-1
var list1 = new List<ETransaccion>(); 
var list2 = new List<EPinpads>(); 

list1.ForEach(
    (x) => 
     x.Seriepinpad = 
      list2.Any(y => y.Sistema == x.Sistema && y.Tienda == x.Tienda && y.Caja == x.Caja) 
       ? list2.First(y => y.Sistema == x.Sistema && y.Tienda == x.Tienda && y.Caja == x.Caja) 
        .Seriepinpad 
       : x.Seriepinpad); 
+0

謝謝詹姆斯!這有很大的幫助! :D –

+0

而不是所有的條件運算符(?:)部分使用x.Seriepinpad = list2.FirstOrDefault(y => y.Sistema == x.Sistema && y.Tienda == x.Tienda && y.Caja == x .Caja)?Seriepinpad –

+0

爲什麼? –