Как создать JetEntityFrameworkProvider.JetConnection и использовать существующие метаданные Edmx? - PullRequest
0 голосов
/ 16 мая 2019

Я использую 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() + "\"";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...