2010-11-15 4 views
2

Возможно ли, или даже рекомендуется использовать пользовательскую файловую систему с Entity Framework? Я работаю над учебным проектом, чтобы узнать, могу ли я взять некоторые пользовательские промежуточные файлы (большинство из них двоичные файлы) из более старой файловой системы и использовать Entity Framework для передачи данных через службу WCF с помощью OData.Использование пользовательской файловой системы с Entity Framework 4.0

У меня проблемы с поиском учебников о том, как это сделать. Не будет ли это рекомендованным подходом с пользовательской файловой системой? Мне очень нравится возможность использования служб WCF и вы хотите их использовать. Я не продаюсь на инфраструктуре сущности, есть ли лучший способ передать эти данные в службу WCF?

спасибо.

+0

Что означает «файловая система» в этом контексте? – Gabe

+0

@Gabe физическое двоичные файлы. Организованные папки/файловые структуры. – jsmith

+0

Вы хотите, чтобы вы использовали EF для получения данных из проприетарных файлов вместо реляционной базы данных? e написание запросов? Выполнение обновлений? – Gabe

ответ

2

Я бы посоветовал против этого. По сути, вы хотите использовать EF в качестве механизма базы данных. Вы должны убедиться, что ваши двоичные файлы запрошены. И у вас есть потоковая архитектура, чтобы избежать общей копии в памяти.

Однако, если данные достаточно малы, я бы просто создал объектную модель, которая представляет ваши данные и использует базовый Linq для его опроса.

Существует еще одно решение, которое позволяет потоковое из текстового файла (реализации IEnumerable на вашем объект и использовать выход из токенизированного потока файлов.

Однако я подозреваю, что цель вашей проблемы заключается в использовании служб WCF Data для сделайте вашу жизнь проще, не сложнее. В таком случае напишите эту идею и вернитесь к чертежной доске, так как это НЕ будет тривиально

2

Я не понимаю, почему нет. EF предназначен для работы с различными поставщиками данных. Есть проекты с открытым исходным кодом, такие как Postgresql provider for EF, которые вы можете изучить, чтобы узнать, как это сделать.