我开发了一个简单的项目.我必须打印一些水晶报告.该项目在本地机器上运行得非常好,但是当我在网络托管服务器上运行时,它会在查看水晶报告时显示错误.
无法加载文件或程序集"CrystalDecisions.ReportAppServer.CommLayer,Version = 13.0.2000.0,Culture = neutral,PublicKeyToken = 692fbea5521e1304"或其中一个依赖项.该系统找不到指定的文件.描述:执行当前Web请求期间发生未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.
异常详细信息:System.IO.FileNotFoundException:无法加载文件或程序集"CrystalDecisions.ReportAppServer.CommLayer,Version = 13.0.2000.0,Culture = neutral,PublicKeyToken = 692fbea5521e1304"或其依赖项之一.该系统找不到指定的文件.
来源错误:
在执行当前Web请求期间生成了未处理的异常.可以使用下面的异常堆栈跟踪来识别有关异常的起源和位置的信息.
程序集加载跟踪:以下信息有助于确定无法加载程序集"CrystalDecisions.ReportAppServer.CommLayer,Version = 13.0.2000.0,Culture = neutral,PublicKeyToken = 692fbea5521e1304"的原因.
警告:装配绑定日志记录已关闭.要启用程序集绑定失败日志记录,请将注册表值[HKLM\Software\Microsoft\Fusion!EnableLog](DWORD)设置为1.注意:程序集绑定失败日志记录会导致一些性能损失.要关闭此功能,请删除注册表值[HKLM\Software\Microsoft\Fusion!EnableLog].
请任何人都可以帮助我......
我正在使用CrystalReportViewer和CrystalReportSource在我的应用程序中加载和显示.rpt文件.
我的情况是这样的:
假设一个人在我的应用程序之外创建了一个水晶报告并将其数据源设置为数据库A.然后我在我的应用程序中使用该.rpt文件,但我需要将它绑定到另一个数据库(就表结构而言与原始数据库相同)和列名,但使用不同的用户名和密码使用不同的连接字符串).我如何在C#中做到这一点?
目前我使用以下方式加载报告:
this.CrystalReportSource1.ReportDocument.Load(reportsSubfolder + report.ReportFileName);
//it is here that I need to change the connection data of the report.
Run Code Online (Sandbox Code Playgroud)