EF4-Mapping varbinary(max) in Binär - Code der Ersten Fehler

Ich habe eine POCO-Klasse genannt Attachment dass die Karten auf eine Tabelle in SqlServer mit einer VarBinary(max) Feld in der it. Das Feld enthält Dateien.

Der POCO-Klasse sieht wie folgt aus

public class Attachment
{
    public string AttachmentId { get; set; }
    public string AttachmentTypeId { get; set; }
    public string Title { get; set; }
    public string Text { get; set; }
    public Binary Data { get; set; }
}

Die Zuordnung sieht wie folgt aus

modelBuilder.Entity<Attachment>().Property(a => a.Data).HasColumnName("col_data");

Jedoch die Zuordnung zu werfen ist ein Fehler

The type 'System.Date.Linq.Binary' must be a non-nullable value type in order to use it as a parameter 'T'

Mapping funktioniert, wenn ich ein byte array aber das scheint die Beschädigung der Daten auf dem Weg durch.

Die Datei in der Datenbank hat eine erste binäre Zeichenfolge wie:-

0x504B0304140008000800027923400000000000000000000000001F000000

Ich denke, das ist eine JPG-Datei.
Jede Hilfe bekommen Sie die Datei aus der DB in einem Stück würde geschätzt.

  • Google schlägt vor, dass 0x504B0304 ist ein Indikator für ein zipfile: google.co.uk/search?q=0x504B0304, wenn das hilft jedem? (Ich hätte gedacht, dass ein byte[] array ist der richtige Weg zu gehen, übrigens.)
  • Was macht Sie denken, es ist beschädigt?
  • Danke Owen, das ist genau Das, was es war. Macht Sinn, jetzt weiß ich, was es ist. Ich bin jetzt in der Lage, die Zip-Datei entpacken und streamen Sie Inhalte an den browser oder Datei-system.
InformationsquelleAutor Tom Styles | 2012-01-06
Schreibe einen Kommentar