solucion referencia objeto instancia establecida como brother c#

c# - brother - referencia a objeto no establecida como instancia de un objeto wcf



Referencia a objeto no establecida como instancia de un objeto. (5)

Quiero extender la respuesta de MattMitchell diciendo que puedes crear un método de extensión para esta funcionalidad:

public static IsEmptyOrWhitespace(this string value) { return String.IsEmptyOrWhitespace(value); }

Esto hace posible llamar:

string strValue; if (strValue.IsEmptyOrWhitespace()) // do stuff

Para mí esto es mucho más limpio que llamar a la función String estática, ¡mientras que sigue siendo seguro para NullReference!

Sigo recibiendo este error cuando ejecuto el programa.

Referencia a objeto no establecida como instancia de un objeto. Descripción: se produjo una excepción no controlada durante la ejecución de la solicitud web actual. Revise el seguimiento de la pila para obtener más información sobre el error y dónde se originó en el código. Detalles de excepción: System.NullReferenceException: referencia de objeto no establecida en una instancia de un objeto.

Source Error: Line with error: Line 156: if (strSearch == "" || strSearch.Trim().Length == 0)

¿Cuál es la forma correcta en que debería escribirse?


Sé que esto fue publicado hace aproximadamente un año, pero esto es para los usuarios para referencia futura.

Me encontré con un problema similar. En mi caso (intentaré ser breve, por favor hágamelo saber si desea más detalles), estaba tratando de verificar si una cadena estaba vacía o no (la cadena es el tema de un correo electrónico). Siempre devolvió el mismo mensaje de error sin importar lo que hice. Sabía que lo estaba haciendo bien, pero seguía arrojando el mismo mensaje de error. Entonces me di cuenta de que, estaba comprobando si el tema (cadena) de un correo electrónico (instancia / objeto), qué pasa si el correo electrónico (instancia) ya era nulo en primer lugar. ¿Cómo podría verificar el asunto de un correo electrónico, si el correo electrónico ya es nulo ... revisé si el correo electrónico estaba vacío, funcionó bien.

mientras buscaba el tema (cadena) utilicé los métodos IsNullorWhiteSpace (), IsNullOrEmpty ().

if (email == null) { break; } else { // your code here }


Todas las versiones de .Net:

if (String.IsNullOrEmpty(strSearch) || strSearch.Trim().Length == 0)

.Net 4.0 o posterior:

if (String.IsNullOrWhitespace(strSearch))


strSearch en este caso es probablemente nulo (no simplemente vacío).

Intenta usar

String.IsNullOrEmpty(strSearch)

si solo está tratando de determinar si la cadena no tiene ningún contenido.


La forma correcta en .NET 4.0 es:

if (String.IsNullOrWhiteSpace(strSearch))

El método String.IsNullOrWhiteSpace utilizado anteriormente es equivalente a:

if (strSearch == null || strSearch == String.Empty || strSearch.Trim().Length == 0) // String.Empty is the same as ""

Referencia para el método IsNullOrWhiteSpace

http://msdn.microsoft.com/en-us/library/system.string.isnullorwhitespace.aspx

Indica si una cadena especificada es Nada, está vacía o solo consta de caracteres de espacios en blanco.

En versiones anteriores, podrías hacer algo como esto:

if (String.IsNullOrEmpty(strSearch) || strSearch.Trim().Length == 0)

El método String.IsNullOrEmpty utilizado anteriormente es equivalente a:

if (strSearch == null || strSearch == String.Empty)

Lo que significa que aún necesita verificar su caso "IsWhiteSpace" con .Trim().Length == 0 según el ejemplo.

Referencia para el método IsNullOrEmpty

http://msdn.microsoft.com/en-us/library/system.string.isnullorempty.aspx

Indica si la cadena especificada es Nothing o una cadena vacía.

Explicación:

strSearch asegurarse de que strSearch (o cualquier variable para ese asunto) no sea null antes de eliminar la referencia utilizando el carácter de punto ( . ); Es decir, antes de hacer strSearch.SomeMethod() o strSearch.SomeProperty , debe verificar que strSearch != null .

En su ejemplo, quiere asegurarse de que su cadena tenga un valor, lo que significa que desea asegurarse de que la cadena:

  • No es nulo
  • No es la cadena vacía ( String.Empty / "" )
  • No es solo espacio en blanco

En los casos anteriores, debe poner "¿Es nulo?" caso primero, por lo que no comprueba los otros casos (y error) cuando la cadena es null .