Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

281
Views
¿Cómo mapear listas en C#?

Hola, estoy trabajando en c # y tengo dos listas como se muestra a continuación.

 public class Table1 { public long Id { get; set; } public int mid {get;set;} public int ChannelId { get; set; } public string Header { get; set; } public string FirstData { get; set; } public string Type { get; set; } public string SubType { get; set; } public string Unit { get; set; } }
 public class Table2 { public long Id { get; set; } public int mid {get;set;} public int ChannelId { get; set; } public string DateRange { get; set; } public string Time { get; set; } }

A continuación se muestra la lista final que quiero

 public class FinalTable { public long Id { get; set; } public int mid {get;set;} public int ChannelId { get; set; } public string Header { get; set; } public string FirstData { get; set; } public string Type { get; set; } public string SubType { get; set; } public string Unit { get; set; } public List<Table2> table2List { get;set;} }

Entonces, tengo algunos datos en Table1 y Table2 . Estoy recuperando estas dos listas de diferentes fuentes y finalmente tengo que preparar la lista en forma de FinalTable .

En la tabla Table1 para cada mid y channelid habrá valores correspondientes en Table2 también. Esta es básicamente una relación de uno a muchos donde foreach mid y channelid en table1 habrá múltiples entradas en Table2 .

Entonces, después de mapear, finalmente me gustaría mostrar los datos en forma de FinalTable . FinalTable tiene la propiedad table2List para acomodar los datos de table2. Puedo hacer esto escribiendo bucles foreach múltiples o anidados, pero cuál sería el mejor enfoque para resolver esto.

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Puedes usar Linq para esto. Su código se vería así:

 var t1 = new List<Table1>(); // your real data as a list var t2 = new List<Table2>(); var result = t1.Select(t => new FinalTable { Id = t.Id, mid = t.mid, // ... table2List = t2.Where(x => x.mid == t.mid && x.ChannelId == t.ChannelId).ToList() });
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!