ich so etwas wie dies in der Regel aus verschiedenen Gründen der gesamten Anwendung verwenden:One-Liner für string Wenn nicht null oder leer sonst
if (String.IsNullOrEmpty(strFoo))
{
FooTextBox.Text = "0";
}
else
{
FooTextBox.Text = strFoo;
}
Wenn ich werde es ich schaffen ein Verfahren viel zu verwenden Das gibt die gewünschte Zeichenfolge zurück. Zum Beispiel:
public string NonBlankValueOf(string strTestString)
{
if (String.IsNullOrEmpty(strTestString))
return "0";
else
return strTestString;
}
und verwenden Sie es mögen:
FooTextBox.Text = NonBlankValueOf(strFoo);
ich immer gefragt, ob es etwas war, das Teil von C# war, dass dies für mich tun würde. Etwas, das wie genannt werden könnte:
FooTextBox.Text = String.IsNullOrEmpty(strFoo,"0")
der zweite Parameter ist der zurückgegebene Wert, wenn String.IsNullOrEmpty(strFoo) == true
Wenn nicht Hat jemand eine bessere Ansätze haben sie verwenden?
'FooTextBox.Text = foo.IsNullOrEmpty? "0": foo; ' –
Verwenden Sie IsNullOrWhiteSpace, während die Zeichenfolge abgeschnitten wird. –
Ich würde Ihren Code nicht ändern, außer '' NonBlankValueOf' 'statisch zu machen. Verlassen Sie sich nicht auf etwas, das C# bietet - die Methode 'NonBlankValueOf' hat eine spezifische Bedeutung für Ihre App und Sie kontrollieren diese Bedeutung. Zum Beispiel, was, wenn Sie eines Tages "0" zu "1" ändern müssten? –