Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 为什么水晶报表登录提示_Asp.net_Crystal Reports - Fatal编程技术网

Asp.net 为什么水晶报表登录提示

Asp.net 为什么水晶报表登录提示,asp.net,crystal-reports,Asp.net,Crystal Reports,为什么我在VS2010 asp.net中执行crystal reports时,仍在下面过程的第二页上收到用户和密码提示。 当我在查看器中单击“下一步”,然后询问用户id和密码时,第一页上并没有提示 public void connectCrystal(ReportDocument repdoc) { ReportDocument rptDoc = new ReportDocument(); ConnectionInfo conInfo = new ConnectionInfo()

为什么我在VS2010 asp.net中执行crystal reports时,仍在下面过程的第二页上收到用户和密码提示。 当我在查看器中单击“下一步”,然后询问用户id和密码时,第一页上并没有提示

public void connectCrystal(ReportDocument repdoc)
{
    ReportDocument rptDoc = new ReportDocument();
    ConnectionInfo conInfo = new ConnectionInfo();
    rptDoc.Load(Server.MapPath("") + "\\Crystal_Reports\\ABC.rpt");

    ConnectionInfo conInfo = new ConnectionInfo();
    conInfo.ServerName = "S1";
    conInfo.DatabaseName = "CR";
    conInfo.UserID = "USER1";
    conInfo.Password = "1234";

    Tables tables = rptDoc.Database.Tables;
    foreach (CrystalDecisions.CrystalReports.Engine.Table table in tables)
    {
        TableLogOnInfo tableLogonInfo = table.LogOnInfo;
        tableLogonInfo.ConnectionInfo = conInfo;
        table.ApplyLogOnInfo(tableLogonInfo);
    }
    crv.ReportSource = rptDoc;
}        

请帮助

我猜您还需要设置表位置。

我无法检查确切的语法,但表对象有一个属性位置。位置可能包含表的全名,因此它看起来像DatabaseName.dbo.TableName。如果您要更改数据库,则需要准备新位置并使用table.location=“your new location here”进行设置。我们可以像我那样在报表的设计模式下设置数据库和表位置。我在桌面应用程序中应用了相同的代码,它工作得很好,但在Web版本中,当我从crystal report browser单击下一页时,它总是弹出“用户登录”窗口。第一页上没有登录提示。啊,好的。我错过了。Web应用程序将丢失实例化的报表对象,并尝试再次实例化它。您需要将ReportDocument rptDoc保存到会话变量中,并在页面加载时加载它。