在實際環境中測試
在生產環境中測試無浮水印。
在任何需要的地方都能運作。
ASP.NET MVC 是一個受歡迎的網站開發框架,可讓開發人員構建堅固且動態的網絡應用程式。 在網路應用程式中,一個常見的需求是生成和顯示條碼圖像的能力。 條碼圖像用於以機器可讀的格式表示數據,可以由條碼掃描器讀取。
在 ASP.NET MVC 中動態生成和顯示條碼圖像可以使用領先市場的 C# 庫 IronBarcode 來實現。 此函式庫提供 API,使開發人員能夠在不同平台上輕鬆生成條碼圖像,支持多種格式,如 Code 39、Code 128 和 QR Code。 在不依賴 System.Drawing.Common 和 .NET Graphics API 的情況下,這些是Windows特定從 .NET 6 開始,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 套件管理器。 可以使用 NuGet 套件管理器控制台通過運行以下命令來安裝該庫:Install-Package BarCode。
開啟 Visual Studio 並點擊「建立新專案」。
在新視窗中找到並選擇 "ASP.NET MVC"(網頁應用程式)「模型-視圖-控制器」,然後按下「下一步」按鈕。
點擊寫下新專案的名稱和其位置,然後點擊下一步。
選擇您要使用的 .NET 版本,並保留其他選項不變,然後點擊建立。
一個 .NET 專案被建立。
此選項可在 Visual Studio 中使用,將直接將 IronBarcode 套件安裝到您的解決方案中。 前往工具並點擊顯示的 NuGet 套件管理員。
在 NuGet 套件管理器中使用搜尋框來搜尋 IronBarcode 函式庫。 從可用套件列表中選擇IronBarcode選項。
在 Visual Studio 菜單中,轉到工具 > NuGet 套件管理員 > 套件管理員主控台。
在套件管理器主控台標籤中輸入以下行:Install-Package BarCode.
套件將下載/安裝到當前專案中並準備好使用。
現在我們的環境已經設置好,我們可以開始了解如何在 ASP.NET MVC 中動態編寫代碼來生成條碼圖像。
首先,在模型資料夾下創建一個名為 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
上面程式碼中的動作方法將處理稍後我們將創建的視圖所產生的提交請求。 使用 IronBarcode,您可以自訂條碼格式、圖像元素、條碼字型和 HTML 圖像元素。 可能需要額外的庫以進行更多自定義,例如鐵畫用於安裝條碼字體。 可以找到更詳細的 API 文件這裡.
現在我們可以為條碼生成器方法創建一個視圖。
在 "HomeController.cs" 檔案中,右鍵點擊 createBarcode
方法,然後點擊新增視圖。
選擇 Razor 視圖並點擊新增。
選擇下圖所示的參數並點擊新增,它將自動為該方法添加視圖。
您可以修改生成的代碼,以按照您的需求更改介面。
@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 框架、Visual Studio 和 IronBarcode 庫等先決條件,開發人員可以輕鬆創建 ASP.NET MVC 專案,並以 Code 39、Code 128 和 QR Code 等多種格式生成和顯示條碼圖像。 這IronBarcode該程式庫為開發者提供了生成條碼的功能,包括可自定義尺寸、顏色和字體的條碼,以及在條碼圖像中添加文字和標誌。 除了條碼生成外,IronBarcode 還包括讀取和解碼條碼圖像的功能。 使用IronBarcode,開發人員可以輕鬆創建符合其業務需求的強大且動態的網絡應用程序。 有關此主題的相關教程,請訪問以下內容連結. 如需有關條碼和 QR 碼生成的逐步教程,請參閱以下內容連結.