Il modo corretto NET 4.0 è:
if (String.IsNullOrWhiteSpace(strSearch))
Il metodo utilizzato String.IsNullOrWhiteSpace
sopra è equivalente a:
if (strSearch == null || strSearch == String.Empty || strSearch.Trim().Length == 0)
// String.Empty is the same as ""
Domanda metodo IsNullOrWhiteSpace
http://msdn.microsoft.com/en-us/library/system.string.isnullorwhitespace.aspx
Indica se una stringa specificata è Niente, vuota o costituita da solo di caratteri spazi bianchi.
Nelle versioni precedenti, si potrebbe fare qualcosa di simile:
if (String.IsNullOrEmpty(strSearch) || strSearch.Trim().Length == 0)
Il metodo String.IsNullOrEmpty
utilizzato sopra è equivalente a:
if (strSearch == null || strSearch == String.Empty)
Il che significa che è ancora necessario per verificare la presenza di il tuo caso "IsWhiteSpace" con .Trim().Length == 0
come nell'esempio.
di riferimento per il metodo IsNullOrEmpty
http://msdn.microsoft.com/en-us/library/system.string.isnullorempty.aspx
Indica se la stringa specificata è Nothing o una stringa vuota.
Spiegazione:
È necessario assicurarsi strSearch
(o qualsiasi variabile per quella materia) non null
prima di voi è dereferenziarlo usando il carattere punto (.
) - vale a dire prima di fare strSearch.SomeMethod()
o strSearch.SomeProperty
voi è necessario verificare che strSearch != null
.
Nel tuo esempio si vuole fare in modo la stringa ha un valore, il che significa che si vuole garantire la stringa:
- non è nullo
- non è una stringa vuota (
String.Empty
/""
)
- non è solo spazi bianchi
Nei casi di cui sopra, è necessario mettere il "è nulla?" In primo luogo, quindi non controlla gli altri casi (ed errori) quando la stringa è null
.
aggiungere caso se (strSearch! = Null)? – ToddBFisher
l'errore indica che un oggetto è nullo. O strSearch è nullo o il risultato di strSearch.Trim() è nullo. Per verificare, utilizzare la risposta di Graphain utilizzando IsNullOrWhitespace. – Russell