如何从.Net Core中的报告连接到MS SQL
程序员文章站
2022-06-26 16:13:12
...
与.Net开发人员一起工作的最常见的DBMS之一是MS SQL Server。在本文中,将介绍在.Net Core应用程序中使用FastReport.Net以及与MS SQL数据源的连接的方法。
首先,需要在报表设计器中创建一个与MS SQL连接的报表,该报表设计器随FastReport.Net一起提供。
然后,在.Net Core项目中,需要添加FastReport库。可以在Nuget包管理器中执行此操作。需要连接以下包:
FastReport.Core - 适用于.Net Core平台的报告生成器库;
FastReport.Data.MsSql - 连接数据库MS SQL;
FastReport.Web - 允许您在浏览器中显示报告的Web报告对象。
然后转到使用报告的控制器。在示例中,这是HomeController。必须添加对以下命名空间的引用:
using FastReport.Web;
using FastReport.Data;
using FastReport.Utils;
并添加代码以使用所需方法创建和加载报表。如果这是索引:public IActionResult Index()
{
RegisteredObjects.AddConnection(typeof(MsSqlDataConnection));
WebReport webReport = new WebReport();
MsSqlDataConnection sqlConnection = new MsSqlDataConnection();
sqlConnection.ConnectionString = "Data Source = localhost; AttachDbFilename =; Initial Catalog = testdb; Integrated Security = True; Persist Security Info = False; User ID =; Password = ";
sqlConnection.CreateAllTables();
webReport.Report.Dictionary.Connections.Add(sqlConnection);
webReport.Report.Load(aaa@qq.com"Reports/CoreMSSQL.frx");
ViewBag.WebReport = webReport;
return View();
}
在第一行中,初始化与MsSqlDataConnection数据库的连接。然后创建一个Web报表对象。得到一个MsSqlDataConnection对象的实例,并将连接字符串设置为其中的数据库。之后给出命令 - 构建所有表。并添加与报告的连接。仅将报告模板加载到Web报告对象并将其传输到视图中。如果报告有变量,那么可以通过以下方式传递应用程序的值:
String value = "Products!";
webReport.Report.SetParameterValue("Param", value);
在Index.chtml视图中(取决于控制器),添加一行:
@await ViewBag.WebReport.Render();
这将显示Web Report对象。应用程序几乎准备就绪,只需要在Configure方法中向Startup.cs文件添加一行代码:
app.UseFastReport();
现在可以运行该应用程序并检查我们的报告操作:
如上图所示,从Nuget安装的连接器的使用极为广泛。刚刚初始化了与数据库的连接。如果不使用MsSqlConnection,必须创建一个连接,一个DataAdapter,一个DataSet并在报告中注册数据源。
下载FastReport.Net最新版本