Es muss nicht unbedingt eine separate Tabelle erstellt werden. Sie sollten mehrere Schritte ausführen. Nehmen wir an, wir haben die Tabelle 'Dokumente' (ID, Name, Daten (varbinary)).
Erstellen Sie jetzt das Projekt.
HINWEIS. Wenn Sie jetzt eine neue Entität "Dokument" erstellen, sollten Sie auch eine neue Entität "DocumentData" erstellen, auch wenn Sie noch keine Daten platzieren möchten:
%Vor%Eine Möglichkeit wäre, Ihre Ergebnismenge in einen anonymen Typ zu projizieren, wenn Sie das Blob nicht benötigen:
%Vor%In diesem Beispiel werden nur Field1 und Field2 geladen.
Diese Methode hat den Nachteil, dass Sie die zurückgegebene Instanz nicht aktualisieren und context.SaveChanges ausführen können. Obwohl ich argumentieren würde, dass das Speichern einer Instanz ohne vollständige Kenntnis der Instanz grenzwertig unsicher ist. Diese Methode ist gut, wenn Sie eine lange Liste der Instanzen zurückgeben möchten, aber vor einer tatsächlichen Aktualisierung nach einer einzelnen Instanz, dem varbinary-Feld und allen, suchen.
Sie sollten Ihr varbinary-Feld aus der Tabelle entfernen und es in eine andere Tabelle einfügen, um eine Eins-zu-Eins-Beziehung zwischen diesen zu erstellen. Dies ist eine gute Übung, da Sie einfach Lazy Loading und andere Dinge implementieren können.
Tabellenaufteilung. Das Tool Entity Developer ermöglicht dies visuell durchzuführen. Sie können Ihre Entität verschiedenen Tabellen zuordnen.
Tags und Links c# entity-framework linq linq-to-entities ado.net