Ist ja ok, wenn du durch die Implementierung deiner Algorithmen lernen willst. Aber denke dran, dass du, wenn du ein Produkt erstellen willst, besser auf Array.Sort zurückgreifst.
Den jüngsten Eintrag bekommst du mit der max Funktion:
select max(date_column) from tbl;
select min(date_column) from tbl;
select count(*) from tbl where ...
Du kannst auch auf die Methode eine Einschränkung setzen:
public static void BubbleSort<typ>(typ[] feld) where typ : IComparable
{
//code
}
Warum dann nicht eine List<KeyValuePair<string,string>> nehmen? Spielt Performance eine derart große Rolle?
Das Problem ist dein Comparer. Der weiss nämlich nicht, wann ein Item "kleiner" ist. Du brauchst auch gar kein SortedDictionary - wozu auch - du willst alles ja in der ursprünglichen Reihenfolge. Ausserdem hast du ja keinerlei richtiges Sortierkriterium, das was du machst, ist ja so nicht beschreibbar.
Worauf willst du hinaus? Für dich tut es doch auch ein normales Dictionary.
Achso. Ich mach nur Trinksport. Golf wird überbewertet.
Hatte mal einen im Flight ( hoch/mittel/Tief), der sagte "Einen einstelligen Programmierer
würde er niemals einstellen.
Der würde ja neben der arbeit auch noch Zeit fürs Golfen haben."
Was ist bitte ein "einstelliger" Programmierer?
BTW: Es gibt von Microsoft eine Elite-Zertifizierung zum Architect, aber die bekommt man nur durch die Einladung eines Mentors, der selber dieses Zertifikat hat.
Da finde ich es wesentlich einfacher zu lesen:
insert into tbl a
select * from tbl2 b
where not exists
(
select 1 from tbl a
where a.Schlüsselkriterium1 = b.Schlüsselkriterium1
and a.Schlüsselkriterium2 = b.Schlüsselkriterium2
-- asf.
)
using System;
using System.Reflection;
[assembly: AssemblyTitle("C#")]
[assembly: AssemblyDescription("C# Language")]
namespace AttributeExample
{
public class Program
{
public static void Main()
{
Assembly SampleAssembly = Assembly.Load(Assembly.GetExecutingAssembly().Full Name);
foreach (Attribute a in SampleAssembly.GetCustomAttributes(true))
{
if (a is AssemblyTitleAttribute)
Console.WriteLine("Assembly Title: " + (a as AssemblyTitleAttribute).Title);
if (a is AssemblyDescriptionAttribute)
Console.WriteLine("Assembly Description: " + (a as AssemblyDescriptionAttribute).Description);
}
}
}
}
Quelle: http://bytes.com/groups/net-c/276704-how-read-assemblyinfo-cs
Du willst das AssemblyProductAttribute auslesen.