Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 20045|Respuesta: 0

[Fuente] Cadena[3]: la propiedad Size tiene un tamaño inválido de 0.

[Copiar enlace]
Publicado en 26/10/2015 9:39:40 | | |
Al llamar a un procedimiento almacenado en un programa C#, una excepción extraña String[3]: la propiedad Size tiene un tamaño inválido de 0.

El procedimiento almacenado que presenta este problema se caracteriza por la presencia de parámetros out de tipo varchar o nvarchar

La definición de este parámetro en el momento de la llamada es similar a
SqlParameter para = new SqlParameter("@paraname", DBType.String);


Solución alternativa: El parámetro out debe tener una longitud especificada, por lo que debe inicializarse así:
SqlParameter para = new SqlParameter("@paraname", DBType.String, size);

  1. DBHelper db = new DBHelper();
  2.             SqlParameter[] param = new SqlParameter[5];
  3.             param[0] = new SqlParameter("ID", SqlDbType.Int);
  4.             param[0].Direction = ParameterDirection.Output;
  5.             param[1] = new SqlParameter("UserID", userid);
  6.             param[2] = new SqlParameter("UserName", SqlDbType.NVarChar, 50);
  7.             param[2].Direction = ParameterDirection.Output;
  8.             param[3] = new SqlParameter("Password", pass);
  9.             param[4] = new SqlParameter("Result", SqlDbType.Int);
  10.             param[4].Direction = ParameterDirection.Output;

  11.             var spc = db.Crm_ExecuteNonQueryReturns("pUserLogin",param);
Copiar código






Anterior:Compara el rendimiento de la clave primaria del campo Guid usando el campo autoincremental en la biblioteca
Próximo:Una pregunta sobre serialización y deserialización
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com