水晶报表动态连接数据库

public bool ApplyLogOn(CrystalDecisions.CrystalReports.Engine.ReportDocument repdoc)
    {
        try
        {
            repdoc.SetDatabaseLogon(ConInfo.UserID, ConInfo.Password, ConInfo.ServerName, ConInfo.DatabaseName, true);
            //repdoc.VerifyDatabase();
            CrystalDecisions.Shared.TableLogOnInfo logOnInfo = new CrystalDecisions.Shared.TableLogOnInfo();
            logOnInfo.ConnectionInfo.ServerName = ConInfo.ServerName;
            logOnInfo.ConnectionInfo.DatabaseName = ConInfo.DatabaseName;
            logOnInfo.ConnectionInfo.UserID = ConInfo.UserID;
            logOnInfo.ConnectionInfo.Password = ConInfo.Password;
            foreach (CrystalDecisions.CrystalReports.Engine.Table tb in repdoc.Database.Tables)
            {
                tb.ApplyLogOnInfo(logOnInfo);
            }
            repdoc.VerifyDatabase();
        }
        catch
        {
            return false;
        }
        return true;
    }

代码就不用详细解释了,大家都应该可以看明白。网上很多帖子都不能很好的解决问题,而且很多都是不正确的,相信这段代码能给大家提供一个思路。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值