private void print_pigeon_name_form_Load(object sender, System.EventArgs e)
{
TableLogOnInfo logOnInfo = new TableLogOnInfo (); ReportDocument oRpt = new ReportDocument(); 
oRpt.Load("E:\\c sharp proj\\pigeon_sys\\pigeon_name.rpt");
int i = 0; // 对报表中的每个表依次循环。
for (i=0;i == oRpt.Database.Tables.Count - 1;i++)
{
// 设置当前表的连接信息。
logOnInfo.ConnectionInfo.ServerName = "LXD-E28196D90CF";
logOnInfo.ConnectionInfo.DatabaseName = "pigeon_system";
logOnInfo.ConnectionInfo.UserID ="sa";
logOnInfo.ConnectionInfo.Password = "123456";
oRpt.Database.Tables [i].ApplyLogOnInfo(logOnInfo);
} this.crystalReportViewer1.ReportSource=oRpt; }
运行时提示我输入数据库登陆密码,第一次输入密码提示我登陆失败,然后再提示输入,不做输入直接电击完成确登陆成功,每次运行都如此,请高手指教,如何去掉这个登陆对话框?

解决方案 »

  1.   

    private void Page_Load(object sender, System.EventArgs e)
    {
    // 在此处放置用户代码以初始化页面
    TableLogOnInfo logOnInfo = new TableLogOnInfo (); ReportDocument oRpt = new ReportDocument(); 
    oRpt.Load(Server.MapPath("MyReport.rpt"));
    int i = 0; // 对报表中的每个表依次循环。
    CrystalDecisions.CrystalReports.Engine.Table tb;
    for (i=0;i == oRpt.Database.Tables.Count - 1;i++)
    {
    tb=oRpt.Database.Tables[i];
    // 设置当前表的连接信息。
    logOnInfo=tb.LogOnInfo;
    logOnInfo.ConnectionInfo.ServerName = "ZHANGPENG\\NETSDK";
    logOnInfo.ConnectionInfo.DatabaseName = "Duwamish7";
    logOnInfo.ConnectionInfo.UserID ="sa";
    logOnInfo.ConnectionInfo.Password = "111111";
    oRpt.Database.Tables [i].ApplyLogOnInfo(logOnInfo);
    } this.CrystalReportViewer1.ReportSource=oRpt;
    }