在这个论坛here中,有人提到Entity Framework不能与Access(Jet DB - .mdb)一起使用。但是,似乎有一个Jet DB提供程序,如here
所述这使我认为实体框架唯一需要的是在定义模型之前定义以下内容:
<connectionStrings>
<add name="ProductContext"
providerName="Microsoft.Jet.OLEDB.4.0"
connectionString="Source=C:\mydatabase.mdb;Jet OLEDB:Database
Password=MyDbPassword;"/>
</connectionStrings>
有没有人知道Entity Framework是否可以与Jet DB一起使用,我想在开始之前确保它确实如此,因为我的设计文档依赖于这个事实。
由于
答案 0 :(得分:16)
实体框架不支持OLEDB连接,因此您的连接字符串将不起作用。实际上不可能让Entity Framework与MS Access协作。您将需要转储设计的MS Access部分或实体框架部分。
使用MS Access最接近的是使用强类型数据集和Linq-to-DataSet http://msdn.microsoft.com/en-us/library/bb386977.aspx
或者,考虑使用SQL Express(它是免费的)http://www.microsoft.com/sqlserver/en/us/editions/2012-editions/express.aspx
答案 1 :(得分:10)
这里有一个MS Access EF 6.1提供商 https://jetentityframeworkprovider.codeplex.com/
修改强>
现在,EF的EF提供商托管在GitHub上
https://github.com/bubibubi/JetEntityFrameworkProvider