在大型系统中,我们会通过服务器集群、分布式系统等方式来实现应用系统的负载均衡。比如,我们会将数据库不是当一台或者多台服务器,将应用程序部署到一台或者多台服务器,将我们的报表模板部署到一台或者多台服务,以此来实现负载均衡,我们本文主要讲解在分布式系统中实现报表加载功能。
我们演示的系统共分为两部分,一部分是ReportLibrary,该工程中包含了所有的报表模板文件;另外一部分是ReportClient,该工程主要用于加载ReportLibrary中的报表模板。在实际部署系统时,ReportLibrary和ReportClient会部署到不同的服务器中。
第一步:创建解决方案
我们在 VS2010 中创建一个名为 LoadReportFromUri 的解决方案,并创建ReportLibrary和ReportClient Web应用程序。
第二步:创建ActiveReports报表模板
在ReportLibrary工程中添加一个ActiveReports页面报表模板,并设计你需要的模板内容。
第三步:浏览报表
在ReportClient中的Default.aspx 页面中添加ActiveReports所提供的webViewer控件,并在后台代码中添加以下代码:
protected void Page_Load(object sender, EventArgs e)
{
// 通过 WebClient 来下载报表服务器上的报表文件
System.IO.Stream stream = null;
WebClient wc = new WebClient();
stream = wc.OpenRead(new Uri("http://localhost:63941/PageReport1.rdlx"));
// 将下载完成的报表对象加载到 WebViewer 控件中
System.IO.StreamReader sr = new System.IO.StreamReader(stream);
GrapeCity.ActiveReports.PageReport report = new GrapeCity.ActiveReports.PageReport(sr);
WebViewer1.Report = report;
}
同时,在ReportClient工程中添加一个ActiveReports页面报表,以此来为ReportClient添加ActiveReports相关的DLL引用和License信息。自动添加DLL引用和licenses.licx之后,将刚才添加的报表文件删除。
第四步:运行工程
运行ReportClient,并查看Default.aspx页面,截图如下:
源码下载:VS2010 + ActiveReports 7
标签: URI , 负载均衡 , 服务器集群 , 分布式系统
转载声明:
欢迎将本站文章进行转载、演绎或用于商业目的,转载时请注明以下信息
文章转自:葡萄城控件博客,http://blog.gcpowertools.com.cn
原文地址:http://blog.gcpowertools.com.cn/post/LoadActiveReportFromURI.aspx
ActiveReports 报表控件| 下载试用
ActiveReports 是一款专注于 .NET 平台的报表控件,全面满足 HTML5 / WinForm / ASP.NET / ASP.NET MVC / WPF 等平台下报表设计和开发工作需求,作为专业的报表工具为全球超过 300,000 开发人员提供了全面的报表开发服务。
您对ActiveReports产品的任何技术问题,都有技术支持工程师提供1对1专业解答,点击此处即可发帖提问>>技术支持论坛
葡萄城热门产品


