Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 20045|Răspunde: 0

[Sursă] String[3]: proprietatea Size are o dimensiune invalidă de 0.

[Copiază linkul]
Postat pe 26.10.2015 09:39:40 | | |
Când se apelează o procedură stocată într-un program C#, o excepție ciudată String[3]: proprietatea Size are o dimensiune invalidă de 0.

Procedura stocată care are această problemă este caracterizată prin prezența parametrilor out de tip varchar sau nvarchar

Definiția acestui parametru la momentul apelului este similară cu
SqlParameter para = new SqlParameter("@paraname", DBType.String);


Soluție alternativă: parametrul out trebuie să aibă o lungime specificată, deci ar trebui inițializat astfel:
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);
Cod de copiere






Precedent:Comparați performanța cheii primare a câmpului Guid folosind câmpul auto-incremental din bibliotecă
Următor:O întrebare despre serializare și deserializare
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com