发布的报告don't work -数据库登录失败错误
本文关键字:work 数据库 登录 错误 失败 报告 don | 更新日期: 2023-09-27 17:54:51
我正在开发一个简单的web应用程序,在VS 2013上创建了3个报告,由于某种原因,这些报告从开发人员模式运行良好,但是当我发布网站时,他们给我"数据库登录失败"错误。是什么原因造成的呢?VS安装在我发布报告的同一服务器上。我已经创建了一个本地管理用户,其信息与用于IIS身份验证的ODBC连接登录用户完全相同,但仍然没有成功。
下面是我的代码:public partial class OpenWOsWebForm : System.Web.UI.Page
{
ConnectionInfo EPAKconnectionInfo = new ConnectionInfo();
protected void SetConnectionInfo()
{
EPAKconnectionInfo.ServerName = ConfigurationManager.AppSettings["EPAK_SERVER_NAME"];
EPAKconnectionInfo.UserID = ConfigurationManager.AppSettings["EPAK_USER_NAME"];
EPAKconnectionInfo.Password = ConfigurationManager.AppSettings["EPAK_PASSWORD"];
}
private void Page_Init(object sender, EventArgs e)
{
ReportDocument report = new ReportDocument();
report.Load("C:''Delray Beach''Delray Beach''Reports''OpenWOsReport.rpt");
SetConnectionInfo();
TableLogOnInfo crTableLogoninfo = new TableLogOnInfo();
foreach (CrystalDecisions.CrystalReports.Engine.Table CrTable in report.Database.Tables)
{
crTableLogoninfo = CrTable.LogOnInfo;
crTableLogoninfo.ConnectionInfo = EPAKconnectionInfo;
CrTable.ApplyLogOnInfo(crTableLogoninfo);
}
foreach (ReportDocument subreport in report.Subreports)
{
foreach (CrystalDecisions.CrystalReports.Engine.Table CrTable in subreport.Database.Tables)
{
crTableLogoninfo = CrTable.LogOnInfo;
crTableLogoninfo.ConnectionInfo = EPAKconnectionInfo;
CrTable.ApplyLogOnInfo(crTableLogoninfo);
}
}
OpenWOsViewer.ReportSource = report;
OpenWOsViewer.ToolPanelView = CrystalDecisions.Web.ToolPanelViewType.None;
}
}
谢谢
除了"数据库登录失败"之外,它是否说"无法连接:不正确的登录参数"?
如果是,试试:https://stackoverflow.com/a/24578304/2248943
试试这些:
- 终止asp.net进程(w3wp.exe或aspnet.exe)重启)。
- 如果您使用的是XSD文件,请检查它的位置路径RPT,尝试再次"设置位置";如果它不工作,尝试删除表,并包括他们ok(这将是辛勤工作)。
这个问题我遇到过很多次,每次都通过其中一个操作解决了。
在我的情况下,问题是在IIS Application Pools/ my web app/ Advanced Settings
的32 bit Applications
是禁用的,我没有包括在我的项目文件夹aspnet_client
,其中crystal run-times files
是存储的,所以我发布应用程序的时候,这些文件没有传输。一旦我启用连接并包含该文件夹,问题就解决了。