轉帖|行業資訊|編輯:龔雪|2020-11-04 10:46:24.427|閱讀 248 次
概述:亞洲暢銷的.NET報表控件,20萬用戶的選擇,可在應用程序中生成各種報表!本文將為大家介紹如何使用ActiveReports在線報表設計器動態綁定數據源,歡迎下載最新版體驗!
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
在使用 ActiveReports報表控件進行在線報表設計的時候,經常會有這樣的需求:設計出的報表,需要加入了固定的字段,但每次需顯示的數據都不一樣,要怎么做才可以動態綁定數據源的數據呢?
其實,通過 ActiveReports 最新推出的Web端在線報表設計器可以很容易的實現動態綁定數據源操作。ActiveReports在線報表設計器主要使用場景包含:
本文將為您介紹如何使用 ActiveReports 的在線報表設計器,動態綁定數據源。
1、 首先通過Visual Studio打開 ActiveReports 的Web端在線報表設計器,其存儲路徑如下:
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 的在線報表設計器中動態綁定數據源,下面我們來看看具體的運行樣式:
5、 示例資源下載:
ActiveReports 是一款專注于 .NET 平臺的報表控件,全面滿足 HTML5 / WinForm / ASP.NET / ASP.NET MVC / WPF 等平臺下報表設計和開發工作需求,作為專業的報表工具為全球超過 300,000 開發人員提供了全面的報表開發服務。
本文轉載自
購正版ActiveReports報表控件授權限時優惠!最高立減萬元!點擊
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自: