我在兩臺服務器之間出現問題,使用不同的odbc dsn。在web.config中使用連接字符串進行水晶報告
我的應用工作得很好,但水晶報告使用原始的odbc連接,我該如何解決這個問題?
我想在web.config中使用相同的連接字符串,但我不知道如何。
發現this但太混亂了,我
感謝,
我在兩臺服務器之間出現問題,使用不同的odbc dsn。在web.config中使用連接字符串進行水晶報告
我的應用工作得很好,但水晶報告使用原始的odbc連接,我該如何解決這個問題?
我想在web.config中使用相同的連接字符串,但我不知道如何。
發現this但太混亂了,我
感謝,
不能以同樣的方式,你可以使用一個連接字符串與ado.net連接。但是,您當然可以使用web.config中的值來指定連接信息。創建ConnectionInfo類的實例並設置ServerName,DatabaseName,UserID和Password屬性。然後將其連接到每個報告的表:
ConnectionInfo reportConnectionInfo = new ConnectionInfo();
reportConnectionInfo.ServerName = ConfigurationManager.AppSetting["ServerName"];
reportConnectionInfo.DatabaseName = ...;
reportConnectionInfo.UserID = ...;
reportConnectionInfo.Password = ...;
foreach (Table table in reportDocument.Database.Tables) {
table.LogOnInfo.ConnectionInfo = reportConnectionInfo;
}
如果您嘗試使用這個建議,我馬虎打字當心...
您可以使用連接字符串。 您必須創建數據庫提供程序ConnectionStringBuilder的實例,以傳遞從配置文件中提取的連接字符串。這裏是VB中的一個例子。
Dim connString As String = ConfigurationManager.ConnectionStrings["MyDbConn"].ConnectionString
Dim connStringBuilder As SqlConnectionStringBuilder = New SqlConnectionStringBuilder(connString)
Dim myConnectionInfo As ConnectionInfo = New ConnectionInfo()
myConnectionInfo.DatabaseName = connectionStringBuilder.InitialCatalog
myConnectionInfo.UserID = connectionStringBuilder.UserID
myConnectionInfo.Password = connectionStringBuilder.Password
myConnectionInfo.ServerName = connectionStringBuilder.DataSource
有沒有辦法使用連接字符串? – sergiogx 2010-05-06 22:57:08
我不知道有任何方法可以做到這一點 – Ray 2010-05-06 23:59:03
發現我可以將servername設置爲odbc dsn,但它仍然有效,但仍然出現錯誤,我認爲這是另一回事。謝謝 – sergiogx 2010-05-07 00:34:28