Kezdőoldal » Számítástechnika » Programozás » C# DataTable group után az...

C# DataTable group után az eredményt kulcsok alapján növekvő sorrendbe rendezni?

Figyelt kérdés

Van egy táblám, amelynek sorait csoportosítom szabadon választható oszlopok alapján.

Tábla oszlopai: nap, óra, megye, város, csapadék (milliméterben).

A kimenetet egy új táblába szeretném felvinni kulcsok alapján sorba rendezve.


Íme a query:

var q = baseTable.AsEnumerable()

.GroupBy(row => columnsToGroupBy.Select(c => row[c]), comparer) //pl: nap, idő, megye

.Select(group => new

{

AllKeys = group.Key,

AllField = group.Sum(row => double.Parse(row["csapadék"].ToString()))

});


Tegyük fel a csoportosítás után megnézhető hogy adott időpontban megyénként mennyi eső esett.

q[0] tartalma { AllKeys { "kedd, "06:00", "Nógrád" }, AllField { "1" } }

q[1] tartalma { AllKeys { "hétfő", "12:00", "Békés" }, AllField { "3" } }

q[2] tartalma { AllKeys { "kedd, "06:00", "Békés" }, AllField { "1,5" } }

q[3] tartalma { AllKeys { "hétfő", "11:00", "Békés" }, AllField { "4" } }


Ezt rendezni szeretném kulcsok szerint egymás után növekvő sorrendbe, hogy így nézzen ki:

q[0] tartalma { AllKeys { "hétfő", "11:00", "Békés" }, AllField { "4" } }

q[1] tartalma { AllKeys { "hétfő", "12:00", "Békés" }, AllField { "3" } }

q[2] tartalma { AllKeys { "kedd, "06:00", "Békés" }, AllField { "1,5" } }

q[3] tartalma { AllKeys { "kedd, "06:00", "Nógrád" }, AllField { "1" } }


HA a felhasználó csak a nap és óra oszlop alapján szeretne csoportosítani, akkor csak a nap és óra oszlop szerint rendezzen sorrendbe.


Tudnátok segíteni, hogyan rendezhetném sorba lekérdezést a fentiek szerint?



2019. nov. 27. 14:19
 1/2 A kérdező kommentje:

Úgy működne, hogy (abc-re):

q.OrderBy(x => x.AllKeys.First()))

.ThenBy(x => x.AllKeys.ToList()[1])

.ThenBy(x => x.AllKeys.ToList()[2])


De mivel nem tudni mennyi kulcs lesz, ez nem jó megoldás.

2019. nov. 27. 16:46
 2/2 A kérdező kommentje:

Ha valakit érdekel a megoldás:

[link]

2019. nov. 28. 00:50

Kapcsolódó kérdések:





Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!