0
我有几个项目(我试图连接到本地DB):使用EF配置连接字符串++/CLI
- DB_API项目(C#项目)连接到DB
- NativeCallingCLR.MixedDLL(C++/CLI) - IL桥调用C#DB API方法
- NativeCallingCLR.Native(C++) - 实现从C++/CLI的API连接到DB
该项目结构是基于: https://www.codeproject.com/Articles/35041/Mixing-NET-and-native-code
我试图配置EF连接不与运行程序集配置,但与其他配置/创建一个配置文件到本地c + +项目。
我试图来配置这样的连接:
创建一个类的结构是这样的:
public partial class ABC : DbContext
{
public ABC(DbConnection conn) : base (conn,true)
{
}
}
然后创建的DbConnection对象是这样的:
public int CreateConnection(string DBConnectionString, string DBProviderName)
{
var conn = DbProviderFactories.GetFactory(DBProviderName).CreateConnection();
conn.ConnectionString = DBConnectionString;
db = new ABC(conn);
return _PASS;
}
我用这些参数调用CreateConnection:
DBConnectionString="metadata=res://*/InDBM.csdl|res://*/InDBM.ssdl|res://*/InDBM.msl;provider=System.Data.SqlClient;provider connection string='data source=localhost;initial catalog=Mycatalog;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework'"
DBProviderName="System.Data.EntityClient"
这些参数工作得很好,当我试图连接一个app.config和一个C#运行程序集,但是当我尝试连接创建Dbconnection对象时,此方法失败。
有人知道我在做什么错在这里?