Jak uniemożliwić Entity Framework ładowanie kolumny FileStream do tablicy bajtów?

Zajmuję się tworzeniem aplikacji do przechowywania plików i włączyliśmy typ FileStream do naszej bazy danych. System ma obsługiwać duże pliki. Jedna część aplikacji umożliwia zbiorcze przesyłanie wielu dokumentów. Dokumenty te muszą być następnie powiązane z innymi podmiotami w systemie.

Jedna strona służy do wyświetlania niepowiązanych dokumentów, aby umożliwić użytkownikowi łączenie dokumentów pojedynczo. Po wykonaniu testów obciążeniowych procesu przesyłania stwierdziliśmy, że podczas ładowania tej strony niepołączonych dokumentów ślad pamięci procesu roboczego ASP.NET wzrósł do ponad GB.

Po zbadaniu wydaje się, że Entity Framework ładuje całą encję wiersza dokumentu (w tym FileStream przekonwertowaną na tablicę bajtów) dla setek niepowiązanych dokumentów. W mojej klasie repozytorium nie zapisuję tej tablicy bajtów podczas konwersji do modelu, ale wtedy jest już za późno. EF spędził czas i pamięć, aby przydzielić tablicę bajtów do reprezentacji klasy Repository.

Czy istnieje sposób, aby powiedzieć EF, aby nie ładował tej tablicy bajtów, chyba że wyraźnie o to poprosię?

questionAnswers(1)

yourAnswerToTheQuestion