【问题标题】:ADO.NET Entity Framework with OLE DB Access Data Source具有 OLE DB 访问数据源的 ADO.NET 实体框架
【发布时间】:2011-01-16 15:05:16
【问题描述】:

有没有人找到使 ADO.NET 实体框架与 OLE DB 或 ODBC 数据源一起工作的方法?具体来说,我需要使用由于各种原因无法升级为 SQL 的 Access 数据库。

This MSDN page 说:

.NET Framework 包括 ADO.NET 提供程序,用于直接访问 Microsoft SQL Server(包括实体框架支持),以及通过 ODBC 和 OLE DB 驱动程序间接访问其他数据库(请参阅 .NET Framework 数据提供程序)。对于直接访问其他数据库,可以使用许多第三方提供商,如下所示。

“间接访问其他数据库”的提法很诱人,但我承认我对数据访问技术的所有不同名称感到非常困惑。

【问题讨论】:

  • 我找不到办法。
  • 这不在我的职责范围内,但是您是否考虑将 Access/Jet/ACE 数据库作为链接服务器安装在 SQL Server 中,然后使用 SQL Server 提供程序?这就是我阅读“间接访问”引用的方式。
  • 我很确定“(包括实体框架支持)”位仅适用于 MS 提供程序的 SQL Server。链接服务器可能值得一试。

标签: database entity-framework ms-access ado.net provider


【解决方案1】:

据我所知,使用实体框架是不可能的。但是,您可以使用 linq to dataset 来访问您的 Access(没有双关语)数据库。

http://msdn.microsoft.com/en-us/library/bb386977.aspx

【讨论】:

    【解决方案2】:

    EF 不能直接使用 OLE DB,因为 EF 提供程序必须将 c# 转换为特定的 SQL 语法(OLE DB 是与具有多种 SQL 语法的多个 DBMS 的连接)。

    如果您需要 MS Access 的 EF 6.1 提供程序,您可以查看此处 https://jetentityframeworkprovider.codeplex.com/

    【讨论】:

      【解决方案3】:

      我不太确定将 Access 与 EF 一起使用,但似乎可以将 linq 与 access 一起使用。 http://social.msdn.microsoft.com/Forums/en/adodotnetentityframework/thread/985a1048-cf56-4bb0-b664-61fbf4957890

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-12-26
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-11-14
        相关资源
        最近更新 更多