?
让我们感受一下----在Asp.net中使用一个现成的水晶报表文件
让我们先感受一下在WebForm中使用水晶报表的感觉。
1) 从WebForm工具栏中拖动水晶报表查看器控件(Crystal Report Viewer)至.aspx页面中。
2) 调出水晶报表查看器控件的属性窗口
3) 点击[...]按钮查看"Data Binding"属性,并弹出了DataBinding窗口。
4) 从左边的"Bindable属性”区中选择“Report Source”
5) 选中"自定义绑定表达式"单选按钮,在右边的底部的窗口中指定.rpt文件的文件名和路径,例如:"C:\\Program
Files\\Microsoft Visual Studio.NET\\Crystal Reports\\Samples\\Reports\\General
Business\\World Sales Report.rpt",然后”确定“
注意:文件”World Sales
Report.rpt“文件是在VS.Net安装时创建的。如果你在安装过程中指定了其它目录,此时你最好确认一下路径的正确性。
上面的步骤中实际上是插入了下面这些代码至Asp.Net文件中:
以及:
<CR:CRYSTALREPORTVIEWER>
id="CrystalReportViewer1" runat="server" Width="350px"
Height="50px" ReportSource=' <%# "C:\\Program
Files\\Microsoft Visual Studio.NET\\Crystal
Reports\\Samples\\Reports\\General Business\\World Sales Report.rpt"
%>'> </CR:CRYSTALREPORTVIEWER>
注意:在飞刀我的VS.Net正式版中自动生成的代码中ReportSource产生的样式不是这样子的,它是:
ReportSource=" <%# C:\xxxxx\xxx.rpt %>"
这样是错误的,会出现错误信息,有两处错误:
- DataBind中要有双引号,因此外部只能用单引号
- 目录分隔符号不能使用"\",必须使用"\\"
必须按照使用本文介绍的格式来手动修改,这也算是VS.Net的一个Bug吧。
6) 在Page_Load方法中调用DataBind方法。(代码为VB.Net)
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs)
DataBind()
End Sub
7)保存并编译你的页面。 现在,你就有一个内嵌水晶报表的WebForm页面了。
注意:实际开发中,一开始会出现无法访问inetsrv目录的错误,解决的办法是改变其目录的安全属性,使User用户有可写的权限。飞刀我发现.Net系统自已给出的解决方法是没有用的,也可能是我使用的是Windows.Net操作系统的原因。
没有相关教程
|