ToString

image_pdfimage_print

Möchte man einen Wert in String konvertieren, gibt es neben Convert.ToString(…) auch  einfach .ToString(). Die 2. Möglichkeit ist weit mächtiger als dass diese einfach nur konvertieren kann. Damit lassen sich Datumsformate individuell darstellen, zahlen Runden usw. Mal ein paar Beispiele:

Read more »

0  

Datum nach darauffolgenden Tagen gruppieren

image_pdfimage_print

Ehrlich gesagt habe ich etwas gebraucht um den Titel richtig zu wählen. Aber ich möchte einmal aufzeigen, welches Szenario ich meine:

Man hat eine Collection mit folgenden Datumelementen:

31.12.2014
01.01.2015
02.01.2015
16.02.2015
19.02.2015
20.02.2015

und möchte sie so sortieren:

Von – Bis

31.12.2014 02.01.2015
16.02.2015 16.02.2015
19.02.2015 20.02.2015

Read more »

0  

ADODB Recordset to Arraylist

image_pdfimage_print

Ich weiß, ADODB ist veraltet und sollte nicht verwendet werden. Wer jedoch doch damit arbeiten muss, kann hier mal weiter lesen.

Read more »

0  

Aktuelles Datum binden

image_pdfimage_print

 

als namespace hinzufügen:

Den DateTimePicker erstellen:

0  

generische Listen / Collection

image_pdfimage_print

Zwar braucht die Dictionary<T, K> weniger Zeit beim hinzufügen/ löschen von Werten, braucht die SortedList doch weniger Ramkapazitäten und ist im großen und ganzen schneller. Deutlich langsamer ist die Hashtable und SortedDictionary.

Read more »

0  

Delegaten und Events

image_pdfimage_print

Delegaten sind in C# aufgebaut wie normale Methoden, jedoch besitzen sie keinen Code der ausgeführt wird, sondern weisen lediglich auf eine Methode mit Code hin.

Das bedeutet, dass die Delegaten genau so wie Methoden

einen Zugriffsmodifikator (private, public ), einen Rückgabe wert und Parameter haben. Die Parameter müssen aber in der Anzahl und Datentyp den Methoden identisch sein.

Read more »

0  

Kommentare und Regionen

image_pdfimage_print

Gewöhnlich verwendet man Kommentare zweierlei Weise. Zum einen kommentiert man einen Code aus, wenn man sich eine Änderung gemacht hat, aber immer die Option haben möchte es rückgängig machen zu können, zum anderen eben um z.B. eine bestimmte Funktion mit eigenen Worten zu beschreiben, damit ein anderer Entwickler sich schnell damit zurecht finden. Andererseits sei es nicht unterschätzt, dass man selbst eigenen Code nach einigen Wochen wieder verstehen lernen muss.

Ich habe bereits Codes gesehen, die eher wie ein Fußballfeld von oben gesehen aussehen, als nach einer Programmierkunst. Eine komplette grüne Landschaft ist natürlich irgendwo kontraproduktiv.

Unter C# hat man aber viel mehr Möglichkeiten etwas zu kommentieren als durch das bekannte //.

Read more »

0  

generische Klassen

image_pdfimage_print

Mit generischen Klassen kann man Datentyp unabhängigen Aufbau einer Klasse erreichen. Das bedeutet, man kann dann ein Objekt der Klasse erzeugen und sagen, dass die Methoden dort eben mit diesen Datentyp arbeiten soll, dem wir dem Objekt übergeben. Auch eine dort deklarierte Variable ist eben der Typ, der übergeben wurde.

Dabei arbeitet man mit einem sogenannten Typ-Parameter, welcher ähnlich einem Platzhalter für einen Datentyp stehen soll. Deutlicher wird das vielleicht durch das folgende Beispiel:

Read more »

0  

Iteratoren

image_pdfimage_print

Das Verb iterieren bedeutet aus einer Kollektion (engl. Collection) nacheinander durch die enthaltenen Elemente durch zulaufen. Nichts anderes tut ja auch die foreach Schleife.

Doch was ist dazu Notwendig, damit eine Iteration stattfinden kann? Die Collection muss die IEnumerable Schnittstelle unterstützen.

IEnumerable besitzt einen Inhaltsverzeichnis (engl. Index) welcher alle Elemente der Liste durchnummeriert beinhaltet. Weiter hat die Schnittstelle eine Methode getEnumerable() um diesen Index auszugeben. Genau dies tut auch die foreach Schleife. Sie ruft die Methode getEnumerable() auf und durchläuft vom ersten bis zum letzten Enumerator.

Interatoren_Standard

Glücklicherweise beinhalten die meisten Collections in .NET diese Schnittstelle (Array, List, DataRow usw.)

Read more »

0  

C# und MySQL /MariaDB

image_pdfimage_print

Als erstes benötigt man die MySql.Data.dll, die man als Verweis hinzufügen muss.
Dazu öffnen wir die Packet-Manager-Konsole durch den Tastenkürzel ALT + T + N + O und geben dort ein:

und bestätigen das Konsolenfenster mit Enter.

Read more »

1