
Wie man Barcodes in ASP.NET MVC dynamisch generiert und anzeigt
ASP.NET MVC ist ein beliebtes Webentwicklungs-Framework, das es Entwicklern ermöglicht, robuste und dynamische Webanwendungen zu erstellen. Eine häufige Anforderung in Webanwendungen ist die Fähigkeit, Barcode-Bilder zu erzeugen und anzuzeigen. Barcode-Bilder werden verwendet, um Daten in einem maschinenlesbaren Format darzustellen und können von einem Barcode-Scanner gelesen werden.
Das dynamische Erzeugen und Anzeigen von Barcode-Bildern in ASP.NET MVC kann mit der marktführenden C#-Bibliothek IronBarcode erreicht werden. Diese Bibliothek bietet APIs, die es Entwicklern ermöglichen, Barcode-Bilder einfach plattformübergreifend in verschiedenen Formaten wie Code 39, Code 128 und QR Code zu erzeugen. Ohne auf System.Drawing.Common und .NET Graphics API angewiesen zu sein, die seit .NET 6 Windows-spezifisch sind, ermöglicht IronBarcode plattformübergreifende Funktionalitäten und sorgt für mehr Source-Kompatibilität.
IronBarcode
IronBarcode ist eine beliebte .NET Barcode-Bibliothek, die eine Vielzahl von Funktionen zum Erstellen, Lesen und Manipulieren von Barcode-Bildern in .NET-Anwendungen bietet. Die Bibliothek wird von Iron Software, einem Softwareentwicklungsunternehmen, das sich auf .NET-Komponenten und -Bibliotheken spezialisiert hat, entwickelt und gepflegt. IronBarcode bietet Unterstützung für eine Vielzahl von Barcode-Formaten, darunter Code 128, Code 39, QR Code, Data Matrix und PDF417. Die Bibliothek bietet auch Funktionen zum Generieren von Barcodes mit benutzerdefinierten Dimensionen, Farben und Schriften sowie zum Hinzufügen von Text und Logos zu Barcode-Bildern.
Zusätzlich zur Barcode-Generierung umfasst IronBarcode auch Funktionen zum Lesen und Dekodieren von Barcode-Bildern. Die Bibliothek kann Barcodes aus Bildern, PDF-Dokumenten und Live-Kamera-Feeds lesen und dekodieren. Es unterstützt sowohl 1D- als auch 2D-Barcode-Formate und kann sogar Barcodes erkennen, die teilweise verdeckt oder beschädigt sind.
Voraussetzungen
Bevor Sie mit IronBarcode in einer .NET-Anwendung arbeiten, müssen einige Voraussetzungen erfüllt sein.
- .NET Framework oder .NET Core: IronBarcode ist so konzipiert, dass es sowohl mit .NET Framework als auch mit .NET Core funktioniert. Stellen Sie sicher, dass Ihre Entwicklungsumgebung die passende .NET-Version installiert hat.
- Visual Studio: IronBarcode kann mit Visual Studio für einfache Entwicklung und Tests integriert werden. Visual Studio Community, Professional oder Enterprise Editionen können verwendet werden. Es kann von der Visual Studio-Website heruntergeladen werden.
- IronBarcode-Bibliothek: Laden Sie die IronBarcode-Bibliothek von der Iron Software-Website herunter und installieren Sie sie oder über den NuGet-Paketmanager. Die Bibliothek kann mithilfe der NuGet-Paket-Manager-Konsole installiert werden, indem der folgende Befehl ausgeführt wird:
Install-Package BarCode.
IronBarcode ist kostenlos für die Entwicklung, muss jedoch für kommerzielle Zwecke und Bereitstellungen lizenziert werden. Sie können den kostenlosen Test ausprobieren, um alle Funktionen zu testen.
Erstellen eines neuen ASP.NET MVC-Projekts
Öffnen Sie Visual Studio und klicken Sie auf Neues Projekt erstellen.

Suchen und wählen Sie im neuen Fenster "ASP.NET MVC (Web App) Model View Controller" aus und klicken Sie auf die Schaltfläche Weiter.

Geben Sie den Namen und den Speicherort des neuen Projekts ein und klicken Sie auf Weiter.

Wählen Sie die .NET-Version, die Sie verwenden möchten, aus und lassen Sie alle anderen Optionen unverändert und klicken Sie auf Erstellen.

Ein .NET-Projekt wird erstellt.

IronBarcode installieren
1. Verwendung des NuGet-Paket-Managers
Diese Option ist in Visual Studio verfügbar und installiert das IronBarcode-Paket direkt in Ihrer Lösung. Gehen Sie zu Tools und klicken Sie auf NuGet Paket-Manager wie gezeigt.

Suchen Sie mit der Suchleiste im NuGet Paket-Manager nach der IronBarcode Bibliothek. Wählen Sie die IronBarcode-Option aus der Liste der verfügbaren Pakete.

2. Verwendung der Visual Studio-Befehlszeile
Gehen Sie im Visual Studio-Menü zu Tools > NuGet-Paket-Manager > Paket-Manager-Konsole.

Geben Sie die folgende Zeile in das Paketmanager-Konsole-Tab ein: Install-Package BarCode.
Das Paket wird heruntergeladen/installiert und ist bereit zur Verwendung.

Generieren und Anzeigen von Barcode-Bildern mit IronBarcode
Jetzt ist unsere Umgebung eingerichtet, wir können damit beginnen, Code zu schreiben, um ein Barcode-Bild in ASP.NET MVC dynamisch zu erzeugen.
Erstellen Sie zuerst eine Klasse im Modell-Ordner mit dem Namen GenerateBarcodeModel.cs
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 NamespaceErstellen Sie einen Ordner mit dem Namen "GeneratedBarcode" im wwwroot-Ordner, um generierte Barcode-Bilder zu speichern.

Fügen Sie die folgende Aktionsmethode in Ihre HomeController.cs Klasse im "controllers"-Ordner ein.
using Microsoft.AspNetCore.Mvc;
using IronBarCode;
using System;
using System.Drawing;
using System.IO;
namespace YourNamespace.Controllers
{
public class HomeController : Controller
{
private readonly IWebHostEnvironment _environment;
public HomeController(IWebHostEnvironment environment)
{
_environment = environment;
}
public IActionResult CreateBarcode()
{
return View();
}
// Handling POST operation inside this Action method
[HttpPost]
public IActionResult CreateBarcode(GenerateBarcodeModel generateBarcode)
{
try
{
// Create a barcode using the input text
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);
// Define path to save the barcode image
string path = Path.Combine(_environment.WebRootPath, "GeneratedBarcode");
if (!Directory.Exists(path))
{
Directory.CreateDirectory(path);
}
// Save the generated barcode as a PNG file
string filePath = Path.Combine(_environment.WebRootPath, "GeneratedBarcode/barcode.png");
barcode.SaveAsPng(filePath);
// Get the file name and URL for the generated barcode image
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();
}
}
}Imports Microsoft.AspNetCore.Mvc
Imports IronBarCode
Imports System
Imports System.Drawing
Imports System.IO
Namespace YourNamespace.Controllers
Public Class HomeController
Inherits Controller
Private ReadOnly _environment As IWebHostEnvironment
Public Sub New(ByVal environment As IWebHostEnvironment)
_environment = environment
End Sub
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
' Create a barcode using the input text
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)
' Define path to save the barcode image
Dim path As String = System.IO.Path.Combine(_environment.WebRootPath, "GeneratedBarcode")
If Not Directory.Exists(path) Then
Directory.CreateDirectory(path)
End If
' Save the generated barcode as a PNG file
Dim filePath As String = System.IO.Path.Combine(_environment.WebRootPath, "GeneratedBarcode/barcode.png")
barcode.SaveAsPng(filePath)
' Get the file name and URL for the generated barcode image
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
End Class
End NamespaceDie Aktionsmethode im Code oben behandelt die Sendeanforderung, die von der Ansicht generiert wird, die wir später erstellen werden. Mit IronBarcode können Sie das Barcode-Format, das Bildelement, die Barcode-Schrift und das HTML-Bildelement anpassen. Zusätzliche Bibliotheken könnten erforderlich sein für mehr Anpassung, wie IronDrawing für die Installation von Barcode-Schriften. Ausführlichere API-Dokumentation finden Sie hier.
Jetzt können wir eine Ansicht für unsere Barcode-Generator-Methode erstellen.
Klicken Sie im HomeController.cs-Datei mit der rechten Maustaste auf die CreateBarcode-Methode und wählen Sie Ansicht hinzufügen.

- Wählen Sie Razor View und klicken Sie auf Hinzufügen.

Wählen Sie die Parameter aus, wie im unten stehenden Bild gezeigt, und klicken Sie auf Hinzufügen. Es wird automatisch eine Ansicht für diese Methode hinzugefügt.

Sie können den generierten Code ändern, um die Schnittstelle nach Ihren Wünschen zu ändern.
@model GenerateBarcodeMVCCore6_Demo.Models.GenerateBarcodeModel
@{
ViewData["Title"] = "CreateBarcode";
}
<h1>CreateBarcode</h1>
<form asp-action="CreateBarcode" method="post">
<div>
<label asp-for="Barcode"></label>
<input asp-for="Barcode" />
<span asp-validation-for="Barcode"></span>
</div>
<button type="submit">Generate Barcode</button>
</form>
@if (ViewBag.QrCodeUri != null)
{
<div>
<img src="@ViewBag.QrCodeUri" alt="Barcode Image" />
</div>
}
@section Scripts {
@{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
}
Jetzt ist alles eingerichtet. Öffnen Sie einfach die _Layout.cshtml-Datei und fügen Sie den Code hinzu, um die CreateBarcode-Option im navbar hinzuzufügen.
<li class="nav-item">
<a class="nav-link text-dark" asp-controller="Home" asp-action="CreateBarcode">CreateBarcode</a>
</li>
Jetzt starten Sie die Anwendung, schreiben Sie Text in das Textfeld und klicken Sie auf die Schaltfläche Barcode erzeugen, und es wird das Barcode-Bild dynamisch erstellt und angezeigt.
5.1. Ausgabe

6. Fazit
Das dynamische Generieren und Anzeigen von Barcode-Bildern in ASP.NET MVC-Anwendungen kann mit der IronBarcode-Bibliothek erreicht werden - eine leistungsstarke .NET Barcode-Bibliothek, die eine Vielzahl von Funktionen zum Erstellen, Lesen und Manipulieren von Barcode-Bildern in .NET-Anwendungen bietet. Durch die Erfüllung von Voraussetzungen wie der Installation des .NET Framework, Visual Studio und der IronBarcode-Bibliothek können Entwickler einfach ASP.NET MVC-Projekte erstellen und Barcode-Bilder in verschiedenen Formaten wie Code 39, Code 128 und QR Code erstellen und anzeigen. Die IronBarcode-Bibliothek bietet Entwicklern Funktionen zum Generieren von Barcodes mit benutzerdefinierten Dimensionen, Farben und Schriften sowie zum Hinzufügen von Text und Logos zu Barcode-Bildern. Zusätzlich zur Barcode-Generierung umfasst IronBarcode auch Funktionen zum Lesen und Dekodieren von Barcode-Bildern. Mit IronBarcode können Entwickler einfach leistungsstarke und dynamische Webanwendungen erstellen, die ihren geschäftlichen Anforderungen entsprechen. Für ein verwandtes Tutorial zu diesem Thema besuchen Sie den folgenden Link. Für ein Schritt-für-Schritt-Tutorial zur Barcode- und QR-Code-Generierung lesen Sie bitte den folgenden Link.

Curtis Chau hat einen Bachelor-Abschluss in Informatik von der Carleton University und ist spezialisiert auf Frontend-Entwicklung mit Expertise in Node.js, TypeScript, JavaScript und React. Leidenschaftlich widmet er sich der Erstellung intuitiver und ästhetisch ansprechender Benutzerschnittstellen und arbeitet gerne mit modernen Frameworks sowie der Erstellung gut strukturierter, optisch ansprechender Handbücher.
Verwandte Artikel


