Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Byte[]-Array-Daten können nicht in der Datenbank in C# gespeichert werden. Es spart 0x

Ich hatte das gleiche Problem, das heißt, das erste Mal wurde das Bild korrekt auf der Datenbankseite gespeichert, aber wenn die anschließende Validierung fehlschlug und ich dann versuchte, das Bild nach Eingabe gültiger Daten erneut zu speichern, erhielt ich 0x in der Bildspalte. Um das zu lösen, habe ich Folgendes getan:@Ann L. sagte:

byte[] photo = null;

if(model.Photo != null)
{
    var stream = model.Photo.InputStream;
    stream.Position = 0;

    using(BinaryReader br = new BinaryReader(model.Photo.InputStream))
    {
        photo = br.ReadBytes(model.Photo.ContentLength);
    }
}