我正在使用asp.net(webforms)开发一个系统,用户可以登录并查看他们的报告。我在报告中使用RDL,但现在我想在报告更具动态性时使用另一种技术,就像这样:
但是我需要一个免费的技术,这需要在asp.net中使用我的项目。我可以用什么?
答案 0 :(得分:1)
我玩过像Crystal Reports或SQL Reports这样的报告系统,发现它们有学习曲线,但也很僵硬且不灵活,或者生成可怕的HTML。
ASP.NET MVC可以用作一个很棒的报告系统,方法如下:
VirtualPathProvider
将MVC .aspx
文件存储在数据库中。.aspx
文件中)应该有一个<% %>
区域,通过运行查询和内容来执行所有报告生成逻辑。<img src="">
元素中,而不是生成静态图像文件,而是执行此操作:<img src="RestfulImage.ashx?line1={1.2,4.6,8...." />
。谷歌实际上有一个你可以使用的服务:https://developers.google.com/chart/image/docs/making_charts 因此,每个报告都是一个.aspx
文件,它被赋予一个数据访问对象,然后直接查询并自己生成报告。显然,对于需要花费很长时间才能构建的报告(但这通常是数据库设计错误或缺少索引的症状),这不适用,但如果您的要求很简单(即一堆SQL SELECT
查询呈现给<table>
和一些图表以便随之而来)然后这种方法很有效。
答案 1 :(得分:0)
您可以将SAP CRYSTAL REPORTS用于报告。
答案 2 :(得分:0)
首先,选择您要使用的报告引擎... Crystal Reports,DevExpress Reporting,Telerik Reporting,ComponentOne ActiveReports是Microsoft SSRS之外的主要参与者。根据您要“结婚”的工具做出决定,因为创建报告可能很麻烦,也可能很容易,具体取决于您为工作选择的工具。
完成后,选择适合您情况的服务器软件。 Crystal服务器有多种选择(包括SAP Crystal Server,VersaReports ReportServer等),其他引擎只有几种选择。