Ответ 1
Насколько я знаю, это невозможно, используя инфраструктуру сущности. Однако вы можете использовать linq для набора данных для доступа к вашей базе данных Access (без каламбур).
Кто-нибудь нашел способ заставить ADO.NET Entity Framework работать с источниками данных OLE DB или ODBC? В частности, мне нужно работать с базой данных Access, которая по разным причинам не может быть оптимизирована для SQL.
Эта страница MSDN говорит:
.NET Framework включает поставщиков ADO.NET для прямого доступа к Microsoft SQL Server (включая поддержку Entity Framework) и для косвенного доступа к другим базам данных с драйверами ODBC и OLE DB (см. Поставщики данных .NET Framework). Для прямого доступа к другим базам данных многие сторонние поставщики доступны, как показано ниже.
Ссылка на "косвенный доступ к другим базам данных" является дразнящим, но я признаю, что меня безнадежно путают все разные имена для технологии доступа к данным.
Насколько я знаю, это невозможно, используя инфраструктуру сущности. Однако вы можете использовать linq для набора данных для доступа к вашей базе данных Access (без каламбур).
EF не может использовать OLE DB напрямую, потому что поставщик EF должен переводить С# в определенный синтаксис SQL (OLE DB - это соединение с несколькими СУБД с несколькими синтаксисами SQL).
Если вам нужен поставщик EF 6.1 для MS Access, вы можете посмотреть здесь https://jetentityframeworkprovider.codeplex.com/
Я не уверен в использовании Access с EF в частности, но, похоже, можно использовать linq с доступом. http://social.msdn.microsoft.com/Forums/en/adodotnetentityframework/thread/985a1048-cf56-4bb0-b664-61fbf4957890