not empty check c# if-statement isnullorempty

c# - empty - Un trazador de líneas para If Cadena no es nulo o está vacío



string null c# (5)

Usualmente uso algo como esto por varias razones a lo largo de una aplicación:

if (String.IsNullOrEmpty(strFoo)) { FooTextBox.Text = "0"; } else { FooTextBox.Text = strFoo; }

Si voy a usarlo mucho, crearé un método que devuelva la cadena deseada. Por ejemplo:

public string NonBlankValueOf(string strTestString) { if (String.IsNullOrEmpty(strTestString)) return "0"; else return strTestString; }

y úsalo como:

FooTextBox.Text = NonBlankValueOf(strFoo);

Siempre me pregunté si había algo que fuera parte de C # que hiciera esto por mí. Algo que podría llamarse así:

FooTextBox.Text = String.IsNullOrEmpty(strFoo,"0")

el segundo parámetro es el valor devuelto si String.IsNullOrEmpty(strFoo) == true

Si no, ¿alguien tiene mejores enfoques que usan?


Esto puede ayudar:

public string NonBlankValueOf(string strTestString) { return String.IsNullOrEmpty(strTestString)? "0": strTestString; }


Hay un operador coalescente nulo ( ?? ), pero no manejaría cadenas vacías.

Si solo estuvieras interesado en lidiar con cadenas nulas, lo usarías como

string output = somePossiblyNullString ?? "0";

Para su necesidad específica, simplemente existe el operador condicional bool expr ? true_value : false_value bool expr ? true_value : false_value que puede usar simplemente para bloques de instrucciones if / else que establecen o devuelven un valor.

string output = string.IsNullOrEmpty(someString) ? "0" : someString;


Puedes usar el operador ternario :

return string.IsNullOrEmpty(strTestString) ? "0" : strTestString FooTextBox.Text = string.IsNullOrEmpty(strFoo) ? "0" : strFoo;


Una vieja pregunta, pero pensé que agregaría esto para ayudar,

#if DOTNET35 bool isTrulyEmpty = String.IsNullOrEmpty(s) || s.Trim().Length == 0; #else bool isTrulyEmpty = String.IsNullOrWhiteSpace(s) ; #endif


Puede escribir su propio método de Extension para el tipo String: -

public static string NonBlankValueOf(this string source) { return (string.IsNullOrEmpty(source)) ? "0" : source; }

Ahora puedes usarlo como con cualquier tipo de cadena

FooTextBox.Text = strFoo.NonBlankValueOf();