asp.net ActiveReportsWeb如何动态绑定数据(后台)
本帖最后由 Lenka.Guo 于 2016-5-12 17:16 编辑asp.net ActiveReportsWeb如何动态绑定数据(后台),有一个dataset数据源如何绑定数据 这有一篇相似功能的实现介绍文章,文章是按照 7.0 版本写的,但是在 v10中也是一样的。主要是通过 LocateDataSource事件绑定数据源。
http://blog.gcpowertools.com.cn/post/2013/05/17/ActiveReports-PageReport-RunTime-DataSource.aspx
我这样写对吗?
protected void Page_Load(object sender, EventArgs e)
{
if (IsPostBack)
{
return;
}
GrapeCity.ActiveReports.PageReport report1 = new GrapeCity.ActiveReports.PageReport(new System.IO.FileInfo(Server.MapPath("PageReport1.rdlx")));
report1.Document.LocateDataSource += new GrapeCity.ActiveReports.LocateDataSourceEventHandler(WebViewer1_LocateDataSource1);
WebViewer1.PdfExportOptions.FitWindow = false;
WebViewer1.PdfExportOptions.DisplayMode = GrapeCity.ActiveReports.Export.Pdf.Section.DisplayMode.Outlines;
WebViewer1.Report = report1;
}
protected void WebViewer1_LocateDataSource1(object sender, GrapeCity.ActiveReports.LocateDataSourceEventArgs args)
{
if (args.DataSourceName == "DataSource1")
{
if (args.DataSetName == "DataSet1")
{
string strCom = " select top(20)id,borrowId,borrowTitle,borrowMoney,dateline,maxRate,listStatusfrom tb_borrowInfo order by id asc";
//创建一个 DataSet对象
System.Data.DataSet ds = null;
myConn.Open();
SqlDataAdapter myCommand = new SqlDataAdapter(strCom, myConn);
myCommand.Fill(ds, "tb_borrowInfo");
myConn.Close();
args.Data = ds;
}
}
} 本帖最后由 Lenka.Guo 于 2016-5-12 17:23 编辑
fsr 发表于 2016-5-12 16:58
我这样写对吗?
protected void Page_Load(object sender, EventArgs e)
{
Page_Load 方法没问题,WebViewer1_LocateDataSource1 中需要args.data 接收的数据是DataTable ,所以必须返回DataTable。可参考以下代码或参考文档:http://www.gcpowertools.com.cn/d ... !Documents/_225.htm
,这是报的错误,难道不可以用SqlConnection连接数据库吗为什么要OleDbConnection ?
fsr 发表于 2016-5-12 17:22
,这是报的错误,难道不可以用SqlConnection连接数据库吗为什么要OleDbConnection ?
用SQL connection 能够连接SQL 数据库,就需要将其他连接函数换成SQLClient 相关的,代码如下:
string myConn = @"Provider=sqloledb; password=123456;data source=30.32.2.88;initial catalog=NWind_CHS;user id=sa;";
string str = " select top(20)id,borrowId,borrowTitle,borrowMoney,dateline,maxRate,listStatus from tb_borrowInfo order by id asc";
System.Data.SqlClient.SqlConnection conn1 = new System.Data.SqlClient.SqlConnection(myConn);
//创建DataTable
DataTable datatable = new DataTable();
System.Data.SqlClient.SqlCommand cmdd = new System.Data.SqlClient.SqlCommand(str, conn1);
System.Data.SqlClient.SqlDataAdapter sqladapter = new System.Data.SqlClient.SqlDataAdapter(cmdd);
sqladapter.Fill(datatable);
args.Data = datatable;
昨天我的问题是dt.Columns后面没有Add方法(datatable出了引用using System.Data;之外),必须是这样写才可以System.Data.DataTable,这样就有Add() fsr 发表于 2016-5-13 10:12
昨天我的问题是dt.Columns后面没有Add方法(datatable出了引用using System.Data;之外),必须是这样写才可 ...
解决了就好:hjyzw:
页:
[1]