folgendes Problem, bei dem ich grad so ein wenig die Segel streiche.
Ich befülle eine DataTable mit String und DateTime, String ist Spalte 1 und DateTime ist Spalte 2. Jetzt würde ich das ganze gern sortieren. Also hole ich mir den DefaultView und lasse diesen sortieren und schreibe mir die sortierten Werte wieder zurück in meine DataTable...
Aber ausgegeben wird mir wieder die Ursprungsliste. Kann mir jemand weiterhelfen?
Code: Alles auswählen
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
namespace testprojekt
{
class Program
{
static void Main(string[] args)
{
DataTable myTable = new DataTable("Testdatenbank");
myTable.Columns.Add("Name", typeof(String));
myTable.Columns.Add("Datum", typeof(DateTime));
myTable.Rows.Add("Name1", DateTime.Parse("01.10.2010"));
myTable.Rows.Add("Name2", DateTime.Parse("01.11.2010"));
myTable.Rows.Add("Name3", DateTime.Parse("01.01.2010"));
myTable.Rows.Add("Name4", DateTime.Parse("01.09.2010"));
DataView myView = myTable.DefaultView;
Console.WriteLine("Vor der Sortierung:");
foreach (DataRow row in myTable.Rows)
{
foreach (DataColumn column in myTable.Columns)
{
Console.Write(row[column] + " ");
}
Console.WriteLine();
}
myView.Sort = "Datum ASC";
DataTable myTable1 = myView.Table;
Console.WriteLine("Nach der Sortierung: ");
foreach (DataRow row in myTable1.Rows)
{
foreach (DataColumn column in myTable1.Columns)
{
Console.Write(row[column] + " ");
}
Console.WriteLine();
}
Console.Write("Weiter mit beliebiger Taste");
Console.ReadLine();
}
}
}
Sukka