在生产环境中测试,无水印。
随时随地满足您的需求。
获得30天的全功能产品。
几分钟内就能启动并运行。
在您的产品试用期间,全面访问我们的支持工程团队。
ASP.NET MVC 是一种流行的网络开发框架,允许开发人员构建健壮、动态的网络应用程序。 网络应用程序的一个常见要求是能够生成和显示条形码图像。 条形码图像用于以机器可读格式表示数据,并可由条形码扫描仪读取。
在ASP.NET MVC中使用市场领先的C#库IronBarcode可以动态生成和显示条形码图像。 该库提供的 API 可使开发人员跨平台轻松生成 Code 39、Code 128 和 QR Code 等各种格式的条形码图像。 IronBarcode 不依赖于 System.Drawing.Common 和 .NET Graphics API,这些从 .NET 6 开始是 特定于 Windows 的,IronBarcode 允许跨平台功能,并提供更高的源代码兼容性。
IronBarcode 是一个流行的 .NET 条码库,为在 .NET 应用程序中创建、读取和操作条码图像提供了广泛的功能。 该库由专门从事 .NET 组件和库的软件开发公司 Iron Software 开发和维护。 IronBarcode 支持多种条形码格式,包括 Code 128、Code 39、QR Code、Data Matrix 和 PDF417。该库还提供生成具有自定义尺寸、颜色和字体的条形码的功能,以及为条形码图像添加文本和徽标的功能。
除了条码生成功能外,IronBarcode 还包括读取和解码条码图像的功能。 该库可以从图像、PDF 文档和实时摄像机画面中读取和解码条形码。 它支持一维和二维条形码格式,甚至可以识别部分模糊或损坏的条形码。
在 .NET 应用程序中使用 IronBarcode 之前,需要满足一些先决条件。
.NET Framework或.NET Core:IronBarcode设计用于兼容.NET Framework和.NET Core。 确保您的开发环境安装了相应的 .NET 版本。
Visual Studio:IronBarcode 可以与 Visual Studio 集成,以便于开发和测试。 可以使用 Visual Studio Community、Professional 或 Enterprise 版本。 可以从Visual Studio 网站下载。
IronBarcode库:从Iron Software网站或通过NuGet包管理器下载并安装IronBarcode库。 可使用 NuGet 软件包管理器控制台运行以下命令安装该库:安装-打包 BarCode。
打开 Visual Studio,点击创建新项目。
在新窗口中找到并选择“ASP.NET MVC(Web应用程序)模型视图控制器”,然后点击“下一步”按钮。
单击写入新项目的名称及其位置,然后单击下一步。
选择要使用的 .NET 版本,其他选项保持不变,然后单击 "创建"。
创建一个 .NET 项目。
该选项可在 Visual Studio 中使用,并将 IronBarcode 软件包直接安装到您的解决方案中。 如图所示,转到工具并点击 NuGet 包管理器。
使用 NuGet 软件包管理器中的搜索框搜索 IronBarcode 库。 从可用软件包列表中选择 IronBarcode 选项。
在 Visual Studio 菜单中,转到工具 > NuGet 包管理器 > 包管理器控制台。
在软件包管理器控制台选项卡中输入以下一行:安装-软件包 BarCode。
软件包将下载/安装到当前项目中,并可随时使用。
现在我们的环境已经搭建完毕,可以开始学习如何编写代码在 ASP.NET MVC 中动态生成 BarCode 图像。
首先,在模型文件夹下创建一个名为 GenerateBarcodeModel.cs 的类
using System.ComponentModel.DataAnnotations;
namespace GenerateBarcodeMVCCore6_Demo.Models
{
public class GenerateBarcodeModel
{
[Display(Name = "Enter Barcode Text")]
public string Barcode
{
get;
set;
}
}
}
using System.ComponentModel.DataAnnotations;
namespace GenerateBarcodeMVCCore6_Demo.Models
{
public class GenerateBarcodeModel
{
[Display(Name = "Enter Barcode Text")]
public string Barcode
{
get;
set;
}
}
}
Imports System.ComponentModel.DataAnnotations
Namespace GenerateBarcodeMVCCore6_Demo.Models
Public Class GenerateBarcodeModel
<Display(Name := "Enter Barcode Text")>
Public Property Barcode() As String
End Class
End Namespace
在 wwwroot 文件夹下创建名为 "GeneratedBarcode "的文件夹,用于存储生成的条形码图像。
在 "controllers "文件夹下的 "HomeController.cs "类中添加以下操作方法。
public IActionResult CreateBarcode()
{
return View();
}
// handling POST operation Inside this Action method
[HttpPost]
public IActionResult CreateBarcode(GenerateBarcodeModel generateBarcode)
{
try
{
GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(generateBarcode.Barcode, BarcodeWriterEncoding.Code128);
// Adding annotation text to barcode
barcode.AddBarcodeValueTextBelowBarcode();
// Styling the Barcode
barcode.ResizeTo(400, 120);
barcode.ChangeBarCodeColor(Color.Red);
barcode.SetMargins(10);
string path = Path.Combine(_environment.WebRootPath, "GeneratedBarcode");
if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
string filePath = Path.Combine(_environment.WebRootPath, "GeneratedBarcode/barcode.png");
// The generated barcode object can be manipulated, annotated, and exported as an image file, a bitmap image, a PDF file, or a data stream.
// Here, we save the generated barcode as an image to the GeneratedBarcode folder we had created
barcode.SaveAsPng(filePath);
string fileName = Path.GetFileName(filePath);
string imageUrl = $"{this.Request.Scheme}://{this.Request.Host}{this.Request.PathBase}" + "/GeneratedBarcode/" + fileName;
ViewBag.QrCodeUri = imageUrl;
}
catch (Exception)
{
throw;
}
return View();
}
public IActionResult CreateBarcode()
{
return View();
}
// handling POST operation Inside this Action method
[HttpPost]
public IActionResult CreateBarcode(GenerateBarcodeModel generateBarcode)
{
try
{
GeneratedBarcode barcode = BarcodeWriter.CreateBarcode(generateBarcode.Barcode, BarcodeWriterEncoding.Code128);
// Adding annotation text to barcode
barcode.AddBarcodeValueTextBelowBarcode();
// Styling the Barcode
barcode.ResizeTo(400, 120);
barcode.ChangeBarCodeColor(Color.Red);
barcode.SetMargins(10);
string path = Path.Combine(_environment.WebRootPath, "GeneratedBarcode");
if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
string filePath = Path.Combine(_environment.WebRootPath, "GeneratedBarcode/barcode.png");
// The generated barcode object can be manipulated, annotated, and exported as an image file, a bitmap image, a PDF file, or a data stream.
// Here, we save the generated barcode as an image to the GeneratedBarcode folder we had created
barcode.SaveAsPng(filePath);
string fileName = Path.GetFileName(filePath);
string imageUrl = $"{this.Request.Scheme}://{this.Request.Host}{this.Request.PathBase}" + "/GeneratedBarcode/" + fileName;
ViewBag.QrCodeUri = imageUrl;
}
catch (Exception)
{
throw;
}
return View();
}
Public Function CreateBarcode() As IActionResult
Return View()
End Function
' handling POST operation Inside this Action method
<HttpPost>
Public Function CreateBarcode(ByVal generateBarcode As GenerateBarcodeModel) As IActionResult
Try
Dim barcode As GeneratedBarcode = BarcodeWriter.CreateBarcode(generateBarcode.Barcode, BarcodeWriterEncoding.Code128)
' Adding annotation text to barcode
barcode.AddBarcodeValueTextBelowBarcode()
' Styling the Barcode
barcode.ResizeTo(400, 120)
barcode.ChangeBarCodeColor(Color.Red)
barcode.SetMargins(10)
Dim path As String = System.IO.Path.Combine(_environment.WebRootPath, "GeneratedBarcode")
If Not Directory.Exists(path) Then
Directory.CreateDirectory(path)
End If
Dim filePath As String = System.IO.Path.Combine(_environment.WebRootPath, "GeneratedBarcode/barcode.png")
' The generated barcode object can be manipulated, annotated, and exported as an image file, a bitmap image, a PDF file, or a data stream.
' Here, we save the generated barcode as an image to the GeneratedBarcode folder we had created
barcode.SaveAsPng(filePath)
Dim fileName As String = System.IO.Path.GetFileName(filePath)
Dim imageUrl As String = $"{Me.Request.Scheme}://{Me.Request.Host}{Me.Request.PathBase}" & "/GeneratedBarcode/" & fileName
ViewBag.QrCodeUri = imageUrl
Catch e1 As Exception
Throw
End Try
Return View()
End Function
上面代码中的操作方法将处理我们稍后创建的 View 生成的提交请求。 使用 IronBarcode,您可以自定义条码格式、图像元素、条码字体和 HTML 图像元素。 可能需要额外的库来进行更多的自定义,例如Iron Drawing用于安装条形码字体。 更详细的API文档可以在这里找到。
现在,我们可以为我们的 BarCode 生成器方法创建一个视图。
在“HomeController.cs”文件中,右键单击createBarcode
方法,然后单击添加视图。
选择 Razor View 并点击添加。
选择下图所示的参数并点击添加,它将自动为该方法添加视图。
!如何在 ASP.NET MVC 中动态生成和显示条形码:图 13
您可以根据自己的需要修改生成的代码,更改界面。
@model GenerateBarcodeMVCCore6_Demo.Models.GenerateBarcodeModel
@{
ViewData ["Title"] = "CreateBarcode";
}
CreateBarcode
GenerateBarcodeModel
Back to List
@section Scripts {
@{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
}
@model GenerateBarcodeMVCCore6_Demo.Models.GenerateBarcodeModel
@{
ViewData ["Title"] = "CreateBarcode";
}
CreateBarcode
GenerateBarcodeModel
Back to List
@section Scripts {
@{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
}
model ReadOnly Property () As GenerateBarcodeMVCCore6_Demo.Models.GenerateBarcodeModel
ViewData ("Title") = "CreateBarcode"
End Property
CreateBarcode GenerateBarcodeModel Back [to] List ReadOnly Property Scripts() As section
@
If True Then
Await Html.RenderPartialAsync("_ValidationScriptsPartial")
End If
End Property
现在一切都已设置好,只需打开 _Layout.cshtml 文件并添加代码以在 navbar
中添加 CreateBarcode
选项。
CreateBarcode
CreateBarcode
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'CreateBarcode
现在运行应用程序,在文本字段中写入文本,然后单击 "生成条形码 "按钮,它将动态创建并显示条形码图像。
在 ASP.NET MVC 应用程序中动态生成和显示条形码图像可以使用 IronBarcode 库来实现--这是一个功能强大的 .NET 条形码库,为在 .NET 应用程序中创建、读取和操作条形码图像提供了广泛的功能。 通过满足安装 .NET Framework、Visual Studio 和 IronBarcode 库等前提条件,开发人员可以轻松创建 ASP.NET MVC 项目,并生成和显示 Code 39、Code 128 和 QR Code 等各种格式的条形码图像。 IronBarcode库为开发人员提供了生成具有自定义尺寸、颜色和字体的条形码,并在条形码图像中添加文本和徽标的功能。 除了条码生成功能外,IronBarcode 还包括读取和解码条码图像的功能。 有了 IronBarcode,开发人员可以轻松创建功能强大的动态网络应用程序,满足业务需求。 有关此主题的相关教程,请访问以下链接。 有关条形码和二维码生成的分步教程,请参阅以下链接。