Я использую Entity Framework 6 в качестве ORM для сопоставления существующей базы данных SQL Server.Я хочу, чтобы мое программное обеспечение могло быть не только SQL Server, но и подключаться к базе данных Access.Я использовал JetEntityFrameworkProvider в качестве решения, но кажется, что он не будет работать, потому что все отношения в Edmx.Есть ли способ, чтобы JetEntityFrameworkProvider работал при использовании той же модели, сгенерированной ADO.Net?
System.Data.OleDb.OleDbConnectionStringBuilder oleDbConnectionStringBuilder = new System.Data.OleDb.OleDbConnectionStringBuilder();
oleDbConnectionStringBuilder.Provider = "Microsoft.ACE.OLEDB.12.0";
oleDbConnectionStringBuilder.DataSource = ServerName;
oleDbConnectionStringBuilder["Jet OLEDB:Database Password"] = Password;
JetEntityFrameworkProvider.JetConnection.DUAL = JetEntityFrameworkProvider.JetConnection.DUALForAccdb;
System.Data.Common.DbConnection connection = new JetEntityFrameworkProvider.JetConnection();
var MetaData = string.Format("metadata=res://{0}/CMSModel.csdl|res://{0}/CMSModel.ssdl|res://{0}/CMSModel.msl;", typeof(CMSEntities).Assembly.FullName);
var x = MetaData + "provider connection string=\"" + oleDbConnectionStringBuilder.ToString() + "\"";
connection.ConnectionString = MetaData + "provider connection string=\"" + oleDbConnectionStringBuilder.ToString() + "\"";