彩票走势图

ActiveReports在线报表设计器让动态绑定数据源如此简单!

转帖|行业资讯|编辑:龚雪|2020-11-04 10:46:24.427|阅读 182 次

概述:亚洲畅销的.NET报表控件,20万用户的选择,可在应用程序中生成各种报表!本文将为大家介绍如何使用ActiveReports在线报表设计器动态绑定数据源,欢迎下载最新版体验!

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

点击获取ActiveReports v14.0最新版下载

在使用 ActiveReports报表控件进行在线报表设计的时候,经常会有这样的需求:设计出的报表,需要加入了固定的字段,但每次需显示的数据都不一样,要怎么做才可以动态绑定数据源的数据呢?

ActiveReports报表控件使用教程

其实,通过 ActiveReports 最新推出的Web端在线报表设计器可以很容易的实现动态绑定数据源操作。ActiveReports在线报表设计器主要使用场景包含:

  • 用拖拽的方式,在 Web 应用程序和浏览器中在线设计报表
  • 直连数据库、动态数据源绑定

本文将为您介绍如何使用 ActiveReports 的在线报表设计器,动态绑定数据源。

具体操作步骤

1、 首先通过Visual Studio打开 ActiveReports 的Web端在线报表设计器,其存储路径如下:

ActiveReports报表控件使用教程

2、 在控制层DataSetsController 里进行一个数据源名称和数据集字段的设置,简单说就是创建表结构、表的命名和表对应的字段名称。

实现代码如下:

public ActionResult GetDataSetContent(string id)

{

DataSet data1= returndata();

ArData XmlJsonData = new ArData();

XmlJsonData.DataSet = new ArDataSet();

XmlJsonData.DataSet.Name = "DataSet1";

XmlJsonData.DataSet.Query = new ArQuery();

XmlJsonData.DataSet.Query.DataSourceName = "DataSource1";

XmlJsonData.DataSet.Fields = new
ArField[data1.Tables[0].Columns.Count];

foreach (DataColumn drc in data1.Tables[0].Columns)

{

XmlJsonData.DataSet.Fields[drc.Ordinal] = new
ArField(drc.ColumnName, drc.ColumnName, drc.Caption);

}

XmlJsonData.DataSource = new ArDataSource();

XmlJsonData.DataSource.Name = "DataSource1";

XmlJsonData.DataSource.ConnectionProperties = new
ArConnectionProperties();

XmlJsonData.DataSource.ConnectionProperties.DataProvider =
"DATASET";

string dataSet = JsonHelper.ObjTranJson(XmlJsonData);

return new ContentResult { Content = dataSet, ContentType =
"application/json" };

}

public DataSet returndata()

{

DataTable dt = new DataTable();

dt.Columns.Add("产品编号");

dt.Columns.Add("产品名称");

dt.Columns.Add("单价");

dt.Columns.Add("库存量");

dt.Columns.Add("产地");

dt.Rows.Add("A001", "苹果", 10, 300, "中国");

dt.Rows.Add("A002", "葡萄", 20, 200, "中国");

dt.Rows.Add("A003", "香蕉", 30, 400, "中国");

dt.Rows.Add("A004", "甘蔗", 10, 300, "中国");

dt.Rows.Add("A005", "荔枝", 20, 200, "中国");

dt.Rows.Add("A006", "芒果", 30, 400, "中国");

dt.Rows.Add("A007", "猕猴桃", 110, 300, "中国");

dt.Rows.Add("A008", "柠檬", 210, 200, "中国");

dt.Rows.Add("A009", "栗子", 320, 400, "中国");

dt.Rows.Add("A010", "火龙果", 100, 300, "中国");

dt.Rows.Add("A011", "青芒", 250, 200, "中国");

dt.Rows.Add("A012", "巴旦木", 320, 200, "中国");

dt.Rows.Add("A013", "土豆", 380, 400, "中国");

dt.Rows.Add("A014", "苹果", 110, 300, "中国");

dt.Rows.Add("A015", "葡萄", 420, 200, "中国");

dt.Rows.Add("A016", "香蕉", 530, 400, "中国");

dt.Rows.Add("A017", "土豆", 380, 400, "中国");

dt.Rows.Add("A018", "苹果", 110, 300, "中国");

dt.Rows.Add("A019", "葡萄", 420, 200, "中国");

dt.Rows.Add("A020", "香蕉", 530, 400, "中国");

dt.Rows.Add("A021", "苹果", 10, 300, "中国");

dt.Rows.Add("A022", "葡萄", 20, 200, "中国");

dt.Rows.Add("A023", "香蕉", 30, 400, "中国");

dt.Rows.Add("A024", "甘蔗", 10, 300, "中国");

dt.Rows.Add("A025", "荔枝", 20, 200, "中国");

dt.Rows.Add("A026", "芒果", 30, 400, "中国");

DataSet temp = new DataSet();

temp.Tables.Add(dt);

return temp;

}

[Route("list")]

[HttpGet]

public ActionResult GetDataSetsList()

{

var dataSetsService =
HttpContext.GetServiceFromContext\<IDataSetsService\>();

//var dataSetsList = dataSetsService.GetDataSetsList();

//return Json(dataSetsList, JsonRequestBehavior.AllowGet);

return Json(new object[] { new { Id ="test", Name = "添加数据" } },
JsonRequestBehavior.AllowGet);

}

3、 需要对创建好的报表进行数据绑定,这里需要注意的是:在进行数据绑定时,务必在 Startup.cs 里进行对应的动态数据源绑定,不然在报表预览时会报错。

主要实现代码如下:

app.UseReporting(config =\>

{

config.UseFileStore(ResourcesRootDirectory);

config.LocateDataSource = args =\>

{

DataSetsController TemCon = new DataSetsController();

DataSet data1 = TemCon.returndata();

return data1;

};

});

4、 完成上述步骤,即可实现在 ActiveReports 的在线报表设计器中动态绑定数据源,下面我们来看看具体的运行样式:

ActiveReports报表控件使用教程
ActiveReports报表控件使用教程
ActiveReports报表控件使用教程

5、 示例资源下载:

  • DataSetsController.cs

ActiveReports 报表控件| 下载试用

ActiveReports 是一款专注于 .NET 平台的报表控件,全面满足 HTML5 / WinForm / ASP.NET / ASP.NET MVC / WPF 等平台下报表设计和开发工作需求,作为专业的报表工具为全球超过 300,000 开发人员提供了全面的报表开发服务。

本文转载自

购正版ActiveReports报表控件授权限时优惠!最高立减万元!点击


慧都2020年终大促

标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@cahobeh.cn

文章转载自:

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP