Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 20045|Risposta: 0

[Fonte] Stringa[3]: la proprietà Size ha una dimensione invalida pari a 0.

[Copiato link]
Pubblicato su 26/10/2015 09:39:40 | | |
Quando si chiama una procedura memorizzata in un programma C#, una strana eccezione String[3]: la proprietà Size ha una dimensione invalida pari a 0.

La procedura memorizzata che presenta questo problema è caratterizzata dalla presenza di parametri out di tipo varchar o nvarchar

La definizione di questo parametro al momento della chiamata è simile a
SqlParameter para = new SqlParameter("@paraname", DBType.String);


Soluzione alternativa: Il parametro out deve avere una lunghezza specificata, quindi dovrebbe essere inizializzato così:
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);
Copia codice






Precedente:Confronta la performance della chiave primaria del campo Guid usando il campo auto-incrementale nella libreria
Prossimo:Una domanda sulla serializzazione e la deserializzazione
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com