아래 구조로 2 개의 목록이 있습니다.2 개의 개체 목록을 결합하고 변경된 값을 목록으로 가져 오는 Linq 쿼리
public class Team
{
public string Id { get; set; }
public Driver Driver { get; set; }
public Driver Codriver { get; set; }
}
public class Driver
{
public string DriverId { get; set; }
}
var modifiedTeams = new List<Team>
{
new Team {Id = "T1", Driver = new Driver { DriverId = "C2" }, Codriver = new Driver { DriverId = "D2"} },
new Team {Id = "T2", Driver = new Driver { DriverId = "D1"} }
};
var originalTeams = new List<Team>
{
new Team {Id = "T1", Driver = new Driver { DriverId = "D1" }, Codriver = new Driver { DriverId = "C1"} },
new Team {Id = "T2", Driver = new Driver { DriverId = "D2"}, Codriver = new Driver { DriverId = "C2"} }
};
옮겨진 팀 ID와 함께 이동 된 모든 팀 ID 목록을 가져오고 싶습니다. 예 : 팀 T1 드라이버가 팀 T2 Codriver로 대체됩니다. 그래서 [{T1, 드라이버}, {T2, Codriver}] 위 movedTeams에 대한
최종 출력으로 목록을 할 수 있습니다 :
[{T1,"Driver"},{T2, "Codriver"},{T1, "Driver"}]
사람이 좀 도와 주시겠습니까.
특별한 linq 솔루션을 찾으십니까? 지금까지 뭐 해봤 어? –
@ Monzhu 나는 LINQ가 아닌 for 루프를 사용하여 간단한 C# 솔루션을 사용해 보았습니다. 그래서 이것이 LINQ –
을 통해 성취 할 수 있는지 알고 싶었습니다. 전적으로 그것을 이해하고 있는지 확신 할 수 없습니다. 그래서 당신은 기본적으로'modifiedTeams'와'originalTeams'를 비교하고 각각의'Team.Id'에 대해 드라이버, 코 드라이버가 바뀌 었는지 확인합니다. =! 또는 인덱스가 중요합니다 (팀 목록의 위치는 무엇입니까? –