.NET Tipps 5: Optionale Parameter und Params sind keine gute Idee

Mal wieder ein neuer .NET Tipp!

C# hat ja so nette Funktionen wie optionale Parameter und „params„. Beide für sich sehr praktisch, mit dem ersten kann man Parametern Default-Werte mitgeben, die benutzt werden, wenn der Parameter nicht angegeben wird. Mit dem zweiten kann man einen Parameter kennzeichnen, der ein Array erwartet, statt diesem kann man dann auch einfach eine Kommata-getrennte Liste angeben.

Nur beides zusammen ist keine gute Idee: Ich hatte diese Funktion, welche eine optionale Sequenznummer erwartet, sowie eine Liste von NiboCommand-Objekten:

Weiterlesen

.NET Tipps 4: Test auf mehrere Werte

Naja, so richtig ist meine „Serie“ nicht in Fahrt gekommen… Der letzte Teil ist auch schon wieder etwas her 😉

Diesmal geht es um etwas, das mich immer richtig nervt: Ab und zu muss man einen Wert auf jede Menge Möglichkeiten testen. Doch dummerweise muss man den Wert immer wieder hinschreiben:

if(meinTollerWert == "mglk1" || meinTollerWert == "mglk2" ||meinTollerWert == "mglk3")
{
MessageBox.Show("1,2 oder 3!");
}

Ziemlich nervig sowas…

Doch es geht einfacher, wie mir vor kurzem aufgefallen ist, den implizit typisierten Arrays sei Dank:

if(new[] {"mglk1", "mglk2", "mglk3" }.Contains(meinTollerWert))
{
MessageBox.Show("1,2 oder 3!");
}

Weiterlesen