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 die .NET Graphics API zurückzugreifen, die ab .NET 6 Windows-spezifisch sind, ermöglicht IronBarcode plattformübergreifende Funktionalitäten und sorgt für eine höhere Quellcodekompatibilitä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 verwenden Sie den NuGet-Paket-Manager. Die Bibliothek kann über die 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 im Tab "Paket-Manager-Konsole" 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 zunächst eine Klasse im Modellordner 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; }
}
}
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
Erstellen Sie unter dem Ordner wwwroot einen Ordner namens "GeneratedBarcode", um die generierten Barcode-Bilder zu speichern.

Fügen Sie die folgende Aktionsmethode in Ihre HomeController.cs Klasse im Ordner "controllers" 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();
}
}
}
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 Namespace
Die 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. Für weitere Anpassungen könnten zusätzliche Bibliotheken erforderlich sein, wie zum Beispiel IronDrawing zur 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 in der Datei HomeController.cs mit der rechten Maustaste auf die Methode CreateBarcode 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 Datei _Layout.cshtml und fügen Sie den Code hinzu, um die Option CreateBarcode in der Datei navbar hinzuzufügen.
<li class="nav-item">
<a class="nav-link text-dark" asp-controller="Home" asp-action="CreateBarcode">CreateBarcode</a>
</li>
<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.
Häufig gestellte Fragen
Wie kann ich Barcode-Bilder in ASP.NET MVC dynamisch generieren?
Sie können die IronBarcode-Bibliothek verwenden, um Barcode-Bilder in ASP.NET MVC dynamisch zu generieren, indem Sie deren API in Ihr Projekt integrieren. Diese C#-Bibliothek unterstützt verschiedene Barcode-Formate und ermöglicht Anpassungen hinsichtlich Abmessungen, Farben und Text.
Welche Vorteile bietet die Verwendung von IronBarcode in ASP.NET MVC-Anwendungen?
IronBarcode bietet plattformübergreifende Funktionalität, ohne auf Windows-spezifische .NET-Grafik-APIs angewiesen zu sein. Es unterstützt mehrere Barcode-Formate, bietet Anpassungsoptionen und kann Barcodes aus Bildern, PDFs und Live-Kameraaufnahmen lesen und dekodieren.
Wie integriere ich IronBarcode in ein ASP.NET MVC-Projekt?
Um IronBarcode in ein ASP.NET MVC-Projekt zu integrieren, müssen Sie die Bibliothek über den NuGet Paket-Manager in Visual Studio installieren, ein Modell für Barcodedaten einrichten, einen Controller zur Bearbeitung der Barcode-Generierung erstellen und eine Ansicht für die Benutzerinteraktion und Barcode-Anzeige gestalten.
Welche Barcode-Formate werden für die Generierung in ASP.NET MVC mit IronBarcode unterstützt?
IronBarcode unterstützt die Generierung einer Vielzahl von Barcode-Formaten in ASP.NET MVC, einschließlich Code 39, Code 128, QR Code, Data Matrix und PDF417.
Kann ich das Aussehen von Barcode-Bildern, die mit IronBarcode generiert werden, anpassen?
Ja, IronBarcode ermöglicht die Anpassung von Barcode-Bildern, einschließlich Anpassung des Barcode-Formats, Farben, Abmessungen, Schriftarten und Hinzufügen von Text oder Logos zum Barcode.
Wie kann ich Probleme bei der Barcode-Generierung in ASP.NET MVC beheben?
Wenn Sie Probleme bei der Barcode-Generierung in ASP.NET MVC haben, stellen Sie sicher, dass die IronBarcode-Bibliothek korrekt installiert ist, alle Abhängigkeiten erfüllt sind und das Barcodedatenmodell und die Controller-Implementierung korrekt eingerichtet sind. Ziehen Sie die Dokumentation von IronBarcode zu Rate für weitere Anleitung.
Ist es möglich, Barcodes in einer ASP.NET MVC-Anwendung mit IronBarcode zu dekodieren?
Ja, IronBarcode bietet die Funktionalität, Barcodes aus verschiedenen Quellen wie Bildern, PDF-Dokumenten und Live-Kameraaufnahmen zu dekodieren, selbst wenn sie teilweise beschädigt sind.
Was sind die Voraussetzungen für das Einrichten eines ASP.NET MVC-Projekts mit IronBarcode?
Sie müssen das .NET Framework oder .NET Core, Visual Studio und die IronBarcode-Bibliothek installiert haben, die von der Iron Software-Website heruntergeladen oder über den NuGet Paket-Manager installiert werden kann.




