我正在执行多个vb6组件,这些组件从asp.net中访问不同的数据库引擎,例如access(mdb),sql server等。
这些组件已经在vb6中编译了dll,并在asp.net framework 2.0中作为引用程序集添加。每个组件都有几个函数,它们将adodb.connection对象作为参数传递,并从这些函数中执行sql语句。这与分层解决方案模式相当,仅在业务逻辑层中传递adodb.connection对象而不是连接字符串。这适用于VB6,但是当在asp.net中调用时,它将无法工作,因为当编译器遇到adodb.connection.open()时,它会修改adodb.connection.connectionstring属性的值。
我如何从adodb.connection对象获取连接字符串
修改
以下是评论中的getConnstringfromASP
。
public void getConnstringfromASP(ADODB.Connection getadoObjConn)
{
string strAdoobjConnString = "";
strAdoobjConnString = getadoObjConn.ConnectionString;
SqlConnection objConnection = new SqlConnection();
objConnection.ConnectionString = strAdoobjConnString;
}
答案 0 :(得分:0)
我认为您创建连接字符串的代码应如下所示:
public void getConnstringfromASP(ADODB.Connection getadoObjConn)
{
string strAdoObjConnString = getadoObjConn.ConnectionString;
SqlConnection objConnection = new SqlConnection(strAdoObjConnString);
}
连接字符串在SqlConnection对象的构造函数中传递。