Ich habe Liste von Tuple wie folgt aus:Group, sortieren Liste der Tuple mit Linq
List<Tuple<int,int, string>> list;
Und mit ausgefüllten Werte:
1,200,"somelabelForHeaderA"
2,200,"sometextA"
3,200,"sometextA"
4,222,"somelabelForHeaderB"
5,222,"sometextB"
6,222,"sometextB"
7,300,"somelabelForHeaderC"
8,300,"sometextC"
9,401,"somelabelForHeaderD"
10,401,"sometextD"
11,401,"sometextD"
12,401,"sometextD"
jetzt, was ich tun möchte, ist Sortier- und Gruppierungs wie diese :
1,200,"somelabelForHeaderA" <== ***Must Be Inserted in Column 1 Row 1***
2,200,"sometextA sometextA" <== ***Must Be Inserted in Column 2 Row 1***
3,222,"somelabelForHeaderB" <== ***Must Be Inserted in Column 1 Row 2***
4,222,"sometextB sometextB" <== ***Must Be Inserted in Column 2 Row 2***
5,300,"somelabelForHeaderC" <== ***Must Be Inserted in Column 1 Row 3***
6,300,"sometextC" <== ***Must Be Inserted in Column 2 Row 3***
7,401,"somelabelForHeaderD" <== ***Must Be Inserted in Column 1 Row 4***
8,401,"sometextD sometextD sometextD" <== ***Insert in Column 2 Row 4***
und dann jeden "somelabelForHeader" insert und "sometext" in einer Zeile.
das ist so weit ich gehen:
var grouped = list.GroupBy(t => t.Item2, t => t.Item3)
.Select(g => Tuple.Create(g.Key, string.Join("\n", g)));
foreach (var groups in grouped)
{
using (SqlConnection sqlconnection = new SqlConnection(Connection_String))
{
using (SqlCommand cmd = new SqlCommand())
{
cmd.Connection = sqlconnection;
cmd.CommandType = CommandType.Text;
cmd.CommandText = query;
cmd.Parameters.AddWithValue("@a", groups.Item2);
cmd.Parameters.AddWithValue("@c", "???");
try
{
sqlconnection.Open();
cmd.ExecuteNonQuery();
}
catch (SqlException ex)
{
}
}
}
mit obigem Code i Gruppe und concat Alle Text kann aber wie kann erste Reihe vor dem Einsetzen sortieren und extrahieren?