Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 20045|Antwort: 0

[Quelle] String[3]: Die Eigenschaft Size hat eine ungültige Größe von 0.

[Link kopieren]
Veröffentlicht am 26.10.2015 09:39:40 | | |
Beim Aufruf einer gespeicherten Prozedur in einem C#-Programm hat eine seltsame Ausnahme String[3]: Die Size-Eigenschaft eine ungültige Größe von 0.

Das gespeicherte Verfahren mit diesem Problem ist durch das Vorhandensein von Out-Parametern vom Typ varchar oder nvarchar gekennzeichnet

Die Definition dieses Parameters zum Zeitpunkt des Aufrufs ist ähnlich wie
SqlParameter para = neuer SqlParameter("@paraname", DBType.String);


Workaround: Der Out-Parameter muss eine bestimmte Länge haben, daher sollte er so initialisiert werden:
SqlParameter para = neuer 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);
Code kopieren






Vorhergehend:Vergleichen Sie die Leistung des Primärschlüssels des Guid-Feldes mit dem selbstinkrementellen Feld in der Bibliothek
Nächster:Eine Frage zur Serialisierung und Deserialisierung
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com