c# - 导航下一页时水晶报表查看器提示数据库登录失败
问题描述
我试图通过在下拉列表中选择值来预览水晶报表。它能够毫无问题地显示第一页。但是当我尝试按下一页按钮/输入页数时,它会提示数据库登录失败错误。
我试图用谷歌搜索这个问题,但仍然无法解决这个问题。我已经经历了与此问题类似的几个线程,但仍然无济于事。
我插入了这个 logOnInfo 函数
public void setLogonInfo()
{
TableLogOnInfo logOnInfo = new TableLogOnInfo();
logOnInfo.ConnectionInfo.ServerName = "servername";
logOnInfo.ConnectionInfo.DatabaseName = "databasename";
logOnInfo.ConnectionInfo.UserID = "user";
logOnInfo.ConnectionInfo.Password = "pwd";
TableLogOnInfos infos = new TableLogOnInfos();
infos.Add(logOnInfo);
crystalReportViewer.LogOnInfo = infos;
}
我也有 Init() 函数
private void Page_Init(object sender, EventArgs e)
{
reportDocument = (ReportDocument)Session["reportDocument"];
crystalReportViewer.ReportSource = reportDocument;
}
最后,这是我点击搜索按钮时的显示报告功能
protected void DisplayReport() // display all value selected
{
string customerID = this.ddwn_cust.SelectedValue;
ReportDocument reportdocument = new ReportDocument();
reportdocument.Load(Server.MapPath("rptSalesRep.rpt"));
reportdocument.SetParameterValue("RepID", lblSalesRep.Text);
reportdocument.SetParameterValue("CustomerID", lblcustomer.Text);
reportdocument.SetParameterValue("ItemTypeID", txtItemType.Text);
reportdocument.SetParameterValue("startdate", Convert.ToDateTime(txtStartDate.Text));
reportdocument.SetParameterValue("enddate", Convert.ToDateTime(txtEndDate.Text));
crystalReportViewer.ReportSource = reportdocument;
setLogonInfo();
}
编辑 至于 Page_Load 中的回发部分,我尝试了一些想法,但我似乎仍然没有做对。
protected void Page_Load(object sender, EventArgs e)
{
//my code
if (!IsPostBack){
if (Session["reportDocument"] != null)
{
reportDocument =(ReportDocument) Session["reportDocument"];
}
crystalReportViewer.ReportSource = reportDocument;
crystalReportViewer.RefreshReport();
}
然而,我仍然无法进入水晶报表查看器的下一页。
这个问题有什么解决办法吗?
先感谢您!
解决方案
推荐阅读
- assembly - 如何解决在 Qtspim 中的 0x00400024 错误代码处执行非指令的尝试?
- c++ - 如果使用捆绑的 libcurl-4.dll,libcurl 在程序(使用 MinGW 构建)中失败(响应代码 0 - 找不到主机)
- javascript - 在 react native 中发出多个 axios 请求以获取不同的数据并输入到屏幕的多个部分
- c - 如何用C替换文件中的字符串?
- fortran - 从 fortran 数组中选择除一个之外的所有元素
- javascript - Airtable API - 使用多个排序字段/方向对排序 URI 进行编码
- ios - 如何通过 PHPhotoLibrary 重命名照片名称
- c++ - Nasm 将程序集引导加载程序导出为与内核链接的对象
- r - 在data.table r中按名称选择不连续的列
- javascript - 根据点击隐藏和显示不同的子元素