c# behandeln von null-byte-array aus mysql-Abfrage
habe ich eine app erstellt, sieht im Grunde für blob-Datensätzen auf einem mysql-server problem, das ich habe ist, dass wenn aus welchem Grund auch immer die blob-Feld leer ist, ist das app stürzt ab. Ich dachte an etwas wie
momentan habe ich
byte[] data = (byte[])DbReader[2];
aber ich Frage mich, ob es irgendeinen Weg gibt, etwas zu tun, wie
if (DbReader.IsDbNull(2)
byte[] data = /* DEFAULT VALUE */
else
byte[] data = (byte[])DbReader[2];
aber kann ich einen Standardwert festlegen?? alles ive versucht, schlägt fehl 🙁
standardmäßig bedeutet ein default-Wert definiert in der SQL irgendwo?
nicht einfach ein standard-Wert definiert in diesem Stadium, wie 1, 2 oder 3 zum Beispiel.
nicht einfach ein standard-Wert definiert in diesem Stadium, wie 1, 2 oder 3 zum Beispiel.
InformationsquelleAutor JazziJeff | 2012-07-04
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wie wäre es damit:
Arrays sind Referenz-Typen, so können Sie null zuweisen. Später werden Sie in der Lage sein zu sehen, wenn die Daten null sind, genau wie dieser:
EDIT: Vereinfachung
Könnte man simplicate Ihrem code wie folgt:
InformationsquelleAutor daniloquio
Können Sie es als leeres array:
InformationsquelleAutor Zbigniew
Wenn Sie beabsichtigen, es zu verwenden an mehreren Orten können Sie die Kapseln in eine extension-Methode...
...und dann einfach es so zu benutzen...
...oder so:
BTW, sollte diese Arbeit für nicht-
byte[]
Arten als gut.InformationsquelleAutor Branko Dimitrijevic
Können Sie versuchen, die IsDBNull Methode:
InformationsquelleAutor Darin Dimitrov