在实际环境中测试
在生产中测试无水印。
随时随地为您服务。
水晶报表 是一款功能强大的报表工具,允许开发人员为其应用程序创建功能丰富的报表。当涉及到包括 条形码 在 Crystal Reports 中使用 C#条形码为数据表示增添了新的维度,使管理和跟踪信息变得更加容易。在本文中,我们将探讨使用 C# 将条形码集成到 Crystal Reports 中的步骤。
1.安装条码库。
2.生成条形码图像并将其保存为数据库表中的图像。
3.设计 Crystal 报告的布局。
4.建立与数据库的连接并选择必要的表。
5.在 Crystal Report 布局中包含一个条形码图像字段。
6.构建并运行项目。
在深入实施之前,选择一个支持 Crystal Reports 和 C# 的条形码库至关重要。一个流行的选择是 IronBarcode 适用于 .NET。
IronBarcode 是一个通用的 .NET 库,可简化条形码 一代 和 阅读.使用 IronBarcode,您可以毫不费力地创建 各种条码包括 Code 128 和 QR 码,只需指定要编码的值即可。它还支持 缩放 和 定制.在读取方面,IronBarcode 可以从图像或 PDF 文件中提取条形码数据,使其成为库存管理和文档跟踪的理想工具。其用户友好的 API 可确保快速集成到您的项目中,跨平台支持允许在不同的 .NET 版本之间进行无缝开发。无论您是经验丰富的开发人员还是初学者,IronBarcode 都能让您高效地使用条形码。
打开 Visual Studio,创建 ASP.NET Crystal Reports Web 站点。我正在使用 Visual Studio 2022.您可以使用任何版本,但要确保安装了特定版本的 Visual Studio Crystal Reports。
选择项目名称、位置和目标框架。点击创建按钮。新项目将如下图所示创建。
在开始之前,我们需要一个数据库。让我们创建一个新数据库和一个示例表。
以下脚本将创建一个新数据库。
CREATE DATABASE ProductDB;
USE [ProductDB]
GO
/****** Object: Table [dbo].[Products] Script Date: 3/10/2024 2:57:18 PM**/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Products](
[Product_ID] [int] NULL,
[Product_Name] [varchar](100) NULL,
[Product_Price] [decimal](18, 0) NULL,
[Product_Barcode] [image] NULL
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
让我们将数据插入该表。我们需要创建一个条形码并将其保存在产品表中。因此,我们需要使用 C# 代码插入数据。我们需要在项目中安装 IronBarcode 库,以使用其功能创建条形码。
安装 IronBarcode 库 使用 NuGet 软件包管理器控制台,请按照以下步骤操作:
打开 NuGet 包管理器控制台。你可以通过查看 -> 其他窗口 -> 软件包管理器控制台找到它。
在软件包管理器控制台中,使用以下命令安装 IronBarcode 库:
Install-Package Barcode
按 Enter 键执行命令。
您也可以使用 "管理解决方案的 NuGet 软件包 "安装 IronBarcode 库:
等待 NuGet 软件包管理器下载并安装 IronBarcode 库及其附属程序。安装完成后,你将在软件包管理器控制台看到一条确认信息。
现在,IronBarcode 库已安装在您的项目中,您可以开始使用其条码生成和读取功能。
我将使用 ADO.NET 生成条形码图像并将其存储到数据库中。以下代码将演示用 C# 生成条形码的示例。
static void Main(string [] args)
{
var myBarcode = BarcodeWriter.CreateBarcode("77446252", BarcodeWriterEncoding.Code128);
myBarcode.AddBarcodeValueTextBelowBarcode();
myBarcode.ResizeTo(600, 300);
SqlConnection cn = new SqlConnection("Data Source=localhost\\SQLEXPRESS;initial catalog=ProductDB ; User ID=sa;Password=123456;Integrated Security=SSPI;");
SqlCommand cmd = new SqlCommand($"INSERT INTO dbo.Products values (77446252, 'Pine Apple Small','100', '{myBarcode.BinaryStream}' )", cn);
cn.Open();
cmd.ExecuteNonQuery();
cn.Close();
}
static void Main(string [] args)
{
var myBarcode = BarcodeWriter.CreateBarcode("77446252", BarcodeWriterEncoding.Code128);
myBarcode.AddBarcodeValueTextBelowBarcode();
myBarcode.ResizeTo(600, 300);
SqlConnection cn = new SqlConnection("Data Source=localhost\\SQLEXPRESS;initial catalog=ProductDB ; User ID=sa;Password=123456;Integrated Security=SSPI;");
SqlCommand cmd = new SqlCommand($"INSERT INTO dbo.Products values (77446252, 'Pine Apple Small','100', '{myBarcode.BinaryStream}' )", cn);
cn.Open();
cmd.ExecuteNonQuery();
cn.Close();
}
Shared Sub Main(ByVal args() As String)
Dim myBarcode = BarcodeWriter.CreateBarcode("77446252", BarcodeWriterEncoding.Code128)
myBarcode.AddBarcodeValueTextBelowBarcode()
myBarcode.ResizeTo(600, 300)
Dim cn As New SqlConnection("Data Source=localhost\SQLEXPRESS;initial catalog=ProductDB ; User ID=sa;Password=123456;Integrated Security=SSPI;")
Dim cmd As New SqlCommand($"INSERT INTO dbo.Products values (77446252, 'Pine Apple Small','100', '{myBarcode.BinaryStream}' )", cn)
cn.Open()
cmd.ExecuteNonQuery()
cn.Close()
End Sub
上述源代码生成条形码,连接 SQL Server 数据库,插入数据 (包括条形码) 到产品表中,然后关闭数据库连接。
var myBarcode = BarcodeWriter.CreateBarcode("77446252", BarcodeWriterEncoding.Code128);
此行使用 BarcodeWriter 类的 CreateBarcode 创建条形码() 方法。条形码是使用 Code 128 编码格式1 从字符串 "77446252 "所代表的二进制数据中生成的。现在,myBarcode 变量将保存生成的条形码。
AddBarcodeValueTextBelowBarcode() 函数将在条形码下方添加一个文本值。
4.我们可以使用 SaveAs() 在文件系统中保存条形码图像的方法。
上述代码将生成以下条形码。
1.SqlConnection cn = new SqlConnection("数据源=localhost\SQLEXPRESS;初始目录=ProductDB;用户 ID=sa;密码=123456;");
2.在此,将建立与 SQL Server 数据库的连接。连接字符串指定服务器 (localhost\SQLEXPRESS),初始目录 (数据库名称:ProductDB)以及验证凭证 (用户 ID sa 和密码 123456).
1.SqlCommand cmd = new SqlCommand($"INSERT INTO dbo.Products values (77446252, 'Pine Apple Small','100', '{myBarcode.BinaryStream}' )", cn);
2.创建一个新的 SqlCommand 对象。该命令表示将数据插入产品表的 SQL 查询。
3.查询向表中的列插入值:77446252、"小松树苹果"、"100 "和生成条形码的二进制流 (myBarcode.BinaryStream).
打开() :数据库连接已打开。
cmd.ExecuteNonQuery():执行 SQL 查询,将指定值插入产品表。
现在,设计报表布局、添加数据库连接并安排必要的字段。如果您是新手,请按照以下步骤操作。
1.打开字段资源管理器 => 数据库字段 => 数据库专家。
![如何使用 C# 在 Crystal Reports 中添加条形码:图 6 - 在报表布局中添加数据库连接:打开字段资源管理器 - 数据库字段 - 数据库专家。](/static-assets/barcode/blog/barcode-in-crystal-report-csharp/barcode-in-crystal-report-csharp-6.webp)
2.展开 创建新连接 => OLE DB(ADO) => 建立新的联系
![如何使用 C# 在 Crystal Reports 中添加条形码:图 7 - 扩展创建新连接 - OLE DB(ADO) - 创建新连接。](/static-assets/barcode/blog/barcode-in-crystal-report-csharp/barcode-in-crystal-report-csharp-7.webp)
3.选择 SQL Server 的 Microsoft OLE DB 数据源。单击下一步。
![如何使用 C#.NET 在 Crystal Reports 中添加条形码?图 8 - 为 SQL Server 选择 Microsoft OLE DB 数据源,然后单击 "下一步"。](/static-assets/barcode/blog/barcode-in-crystal-report-csharp/barcode-in-crystal-report-csharp-8.webp)
4.提供服务器名称、登录凭证和数据库名称,如下所示。
![如何使用 C# 在 Crystal Reports 中添加条形码:图 9 - 指定 SQL 服务器名称、登录凭证和数据库名称。然后点击下一步 - 完成。](/static-assets/barcode/blog/barcode-in-crystal-report-csharp/barcode-in-crystal-report-csharp-9.webp)
5.按下 "下一步 "按钮,会出现一个新窗口,然后单击 "完成"。
6.选择要添加的表。在本例中,选择产品表。
![如何使用 C# 在 Crystal Reports 中添加条形码:图 10 - 添加表:从 ProductDB 数据库中选择产品表。然后单击 "确定 "按钮。](/static-assets/barcode/blog/barcode-in-crystal-report-csharp/barcode-in-crystal-report-csharp-10.webp)
7.点击 "确定 "按钮。
我们已经建立了数据库连接。现在,我们来设置报告布局。
现在,我添加了一个文本框,文本为 "Crystal report C# 中的条形码"。添加文本框后,从数据库字段中拖放产品 ID、产品名称、产品价格字段和产品条形码,并将它们置于文本框中,如下图所示。
请参阅 Crystal Report Viewer 中的 Crystal Report Preview。
构建并运行该项目。输出结果如下
我没有下载示例数据集软件包,确保我有正确的数据文件,然后用 C# 创建了一个用于全面数据可视化的 Crystal Report。
这样,我们就可以在 Crystal Reports 应用程序中创建条形码,而无需下载条形码字体。同样,我们还可以根据您的要求添加 QR 码。
总之,使用 C# 将条形码集成到 Crystal Reports 中是一种增强数据表示和管理的强大方法。选择一个可靠的条形码库,如 IronBarcode 简化了流程,提供了多功能性和易用性。IronBarcode 支持各种条形码类型、大小调整和自定义功能,是条形码生成和读取任务中的宝贵财富。这里提供的分步指南确保了从选择库到设计 Crystal Report 布局的无缝实施过程。
此外,本指南还提供了一些其他功能、 IronBarcode开发人员可以通过IronBarcode,解锁更多的功能和支持,进一步增强他们的条码集成体验。这种灵活性使IronBarcode成为开发人员的不二之选,无论是小型项目还是企业级应用。