Zwykle używam coś takiego z różnych powodów w całej aplikacji:One liner bo jeśli ciąg nie jest null lub pusty inny
if (String.IsNullOrEmpty(strFoo))
{
FooTextBox.Text = "0";
}
else
{
FooTextBox.Text = strFoo;
}
Jeśli mam zamiar go używać dużo będę utworzyć metodę która zwraca żądany ciąg znaków. Na przykład:
public string NonBlankValueOf(string strTestString)
{
if (String.IsNullOrEmpty(strTestString))
return "0";
else
return strTestString;
}
i używać go jak:
FooTextBox.Text = NonBlankValueOf(strFoo);
Zawsze zastanawiałem się, czy nie było coś, co było częścią C#, który zrobi to za mnie. Coś, co można nazwać tak:
FooTextBox.Text = String.IsNullOrEmpty(strFoo,"0")
drugi parametr jest zwracana wartość jeśli String.IsNullOrEmpty(strFoo) == true
nie Jeśli ktoś ma jakieś lepsze podejścia używają?
'FooTextBox.Text = foo.IsNullOrEmpty? "0": foo; ' –
Użyj IsNullOrWhiteSpace podczas przycinania łańcucha. –
Nie zmieniłbym twojego kodu, z wyjątkiem sytuacji, w której stałoby się 'NonBlankValueOf'. Nie polegaj na czymś, co może dostarczyć C# - metoda "NonBlankValueOf" ma określone znaczenie dla Twojej aplikacji i kontrolujesz to znaczenie. Na przykład, co by było, gdybyś kiedyś musiał zmienić "0" na "1"? –