我在Windows窗体应用程序C#中有mysql数据库,我想使用crystal report进行报告,但我想连接到没有报告向导的数据库,因为我希望我的应用程序独立于数据库服务器地址,我的应用程序有这个选项可以设置数据库服务器地址连接.how可以实现这个目标吗?
提前谢谢。
答案 0 :(得分:0)
与this article一样,我认为您可以手动传递connectionStrings
:
// Get document
ReportDocument doc = this.CrystalReportSource1.ReportDocument;
// Set connection string from config in existing LogonProperties
doc.DataSourceConnections[0].LogonProperties.Set("Connection String",
ConfigurationManager.AppSettings["connectionString"]);
// Add existing properties to a new collection
NameValuePairs2 logonProps = new NameValuePairs2();
logonProps.AddRange(doc.DataSourceConnections[0].LogonProperties);
// Set our new collection to be the defaults
// This causes Crystal Reports to actually use our changed properties
doc.DataSourceConnections[0].SetLogonProperties(logonProps);