Zum Fußzeileninhalt springen
IRONBARCODE VERWENDEN
Wie drucke ich einen Barcode in ASP.NET?

Wie man Barcode in ASP.NET in C# druckt

Dieser Artikel demonstriert, wie Barcode-Bilder in ASP.NET-Webanwendungen mit C# gedruckt werden können. Das MVC-Framework wird für dieses Beispiel verwendet, aber Sie können auch ASP.NET Web Forms, Windows Forms oder Web API je nach Bedarf verwenden.

Grundkenntnisse des ASP.NET MVC-Frameworks werden Ihnen ein besseres Verständnis dieses Artikels vermitteln.


Erstellen Sie ein MVC-Projekt

Öffnen Sie Microsoft Visual Studio. Klicken Sie auf Create New Project > Wählen Sie ASP.NET Web Application aus den Vorlagen > Drücken Sie Next > Benennen Sie Ihr Projekt > Drücken Sie Next > Wählen Sie MVC > Klicken Sie auf die Schaltfläche Create. Das Projekt wird wie unten dargestellt erstellt.

So drucken Sie Barcodes in ASP.NET in C#, Abbildung 1: Erstellen eines neuen ASP.NET Projekts Erstellen Sie ein neues ASP.NET-Projekt

Modell hinzufügen

Klicken Sie mit der rechten Maustaste auf den Ordner Modelle > Hinzufügen > Klasse....

So drucken Sie Barcodes in ASP.NET in C#, Abbildung 2: Navigieren Sie zum Dialogfeld Navigieren Sie zum Dialog "Klasse hinzufügen"

Ein neues Fenster wird geöffnet. Benennen Sie Ihre Klasse wie folgt: BarcodeModel.

Schreiben Sie den folgenden Code in die Modellklasse.

using System.ComponentModel.DataAnnotations;

public class BarcodeModel
{
    [Display(Name ="Barcode File Name")]
    public string FileName { get; set; }

    [Display(Name = "Barcode Content")]
    public string BarcodeContent { get; set; }
}
using System.ComponentModel.DataAnnotations;

public class BarcodeModel
{
    [Display(Name ="Barcode File Name")]
    public string FileName { get; set; }

    [Display(Name = "Barcode Content")]
    public string BarcodeContent { get; set; }
}
$vbLabelText   $csharpLabel

Der Code FileName wird verwendet, um den Namen des Barcode-Bildes vom Benutzer abzufragen. Der Code BarcodeContent dient dazu, den Inhalt für den Barcode zu übernehmen.

Controller hinzufügen

Als Nächstes wird dem Projekt ein Controller hinzugefügt. Es wird mit View und Model über das MVC-Modell kommunizieren. Der Code zur Erzeugung von Barcodes besteht nur aus zwei oder drei Zeilen. Daher ist keine separate Klasse erforderlich; stattdessen wird der Code innerhalb des Controllers hinzugefügt.

Um den Controller hinzuzufügen, klicken Sie mit der rechten Maustaste auf den Ordner Controller > Hinzufügen > Controller. Ein neues Fenster wird geöffnet. Wählen Sie MVC 5 Controller Empty. Klicken Sie auf Hinzufügen. Ein neues Feld erscheint.

So drucken Sie Barcodes in ASP.NET in C#, Abbildung 3: Controller-Dialog hinzufügen Controller hinzufügen Dialog

Geben Sie Ihren Controllernamen ein, zum Beispiel BarcodeController. - Klicken Sie auf Hinzufügen. Ein neuer Controller wird generiert.

Der nächste Schritt ist die Installation der Barcode-Bibliothek.

Installieren Sie die Barcode-Bibliothek

Die IronBarcode-Bibliothek wird als Drittanbieterbibliothek empfohlen, um Barcodes zu generieren. Sie ist kostenlos für die Entwicklung und bietet mehrere Funktionen zur Anpassung von Barcodes, wie das Hinzufügen eines Logos zu einem Barcode-Bild, das Hinzufügen von Werten unter oder über dem Barcode, Hinzufügen von Anmerkungen unter oder über dem Barcode, Ändern der Größe des Barcodes, Speichern des Barcodes in verschiedenen Bildformaten usw. Für mehr Details klicken Sie bitte hier.

Gehen Sie zur Package Manager Console. Geben Sie den Befehl ein und drücken Sie Enter.

Install-Package BarCode

Dieser Befehl wird die IronBarcode-Bibliothek im Projekt installieren.

Den Barcode generieren

Fügen Sie als nächstes den folgenden Beispielcode dem Controller hinzu.

using System.IO;
using System.Linq;
using System.Web.Mvc;
using IronBarCode;

public class BarcodeController : Controller
{
    [HttpPost]
    public ActionResult CreateBarcode(BarcodeModel model)
    {
        try
        {
            // Create a barcode with the specified content and encoding
            var MyBarCode = BarcodeWriter.CreateBarcode(model.BarcodeContent, BarcodeEncoding.Code128);

            // Define the path where the barcode image will be saved
            string path = Server.MapPath("~/Files/");
            string filepath = Path.Combine(path, model.FileName);

            // Add the barcode value text above the barcode
            MyBarCode.AddBarcodeValueTextAboveBarcode();

            // Save the generated barcode as a JPEG file
            MyBarCode.SaveAsJpeg(filepath);

            // Retrieve the first file from the directory as a sample image
            string image = Directory.GetFiles(path).FirstOrDefault();

            // Pass the image path to the view
            ViewBag.FileName = image;
            return View();
        }
        catch
        {
            // Handle any exceptions that occur
            return View();
        }
    }
}
using System.IO;
using System.Linq;
using System.Web.Mvc;
using IronBarCode;

public class BarcodeController : Controller
{
    [HttpPost]
    public ActionResult CreateBarcode(BarcodeModel model)
    {
        try
        {
            // Create a barcode with the specified content and encoding
            var MyBarCode = BarcodeWriter.CreateBarcode(model.BarcodeContent, BarcodeEncoding.Code128);

            // Define the path where the barcode image will be saved
            string path = Server.MapPath("~/Files/");
            string filepath = Path.Combine(path, model.FileName);

            // Add the barcode value text above the barcode
            MyBarCode.AddBarcodeValueTextAboveBarcode();

            // Save the generated barcode as a JPEG file
            MyBarCode.SaveAsJpeg(filepath);

            // Retrieve the first file from the directory as a sample image
            string image = Directory.GetFiles(path).FirstOrDefault();

            // Pass the image path to the view
            ViewBag.FileName = image;
            return View();
        }
        catch
        {
            // Handle any exceptions that occur
            return View();
        }
    }
}
$vbLabelText   $csharpLabel
  • try-catch wird verwendet, um Laufzeitausnahmen abzufangen. Die von der Klasse CreateBarcode bereitgestellte Funktion benötigt zwei Argumente: den Barcode-Inhalt und das Kodierungsschema. Zusätzlich akzeptiert sie auch 11 andere optionale Argumente wie maximale Höhe, maximale Breite usw. Die Funktion Server.MapPath dient dazu, den Pfad festzulegen, unter dem die generierten Barcode-Bilder gespeichert werden. Die Methode Path.Combine kombiniert den Pfad und den Namen des Barcode-Bildes. Die Funktion AddBarcodeValueTextAboveBarcode fügt den Barcode-Wert hinzu. IronBarcode bietet weitere Barcode-Einstellungen wie z. B. max-height, max-width, barcode, color usw. Sie können die verschiedenen Parameter erkunden und nutzen. Die Funktion SaveAsJpeg nimmt den Pfad als Argument und speichert die generierten Barcodes in diesem Pfad.
  • Die Methode Directory.GetFiles ruft das neu generierte Barcode-Bild ab.
  • ViewBag.FileName wird verwendet, um den Pfad des Barcode-Bildes an die Ansicht zur Anzeige des generierten Barcode-Bildes zu senden.

QR-Codes können auch auf die gleiche Weise generiert werden, indem das Codierungsschema von Code128 auf QRCode geändert wird.

Ansicht hinzufügen

Der nächste Schritt besteht darin, der ASP.NET-Webanwendung eine neue Ansicht hinzuzufügen, um die Client-Seite bereitzustellen. Rechtsklick auf den Controllermethodennamen und "Ansicht hinzufügen" wählen.

So drucken Sie Barcodes in ASP.NET in C#, Abbildung 4: Navigieren Sie zum Dialogfeld Zum Dialog "Ansicht hinzufügen" navigieren

Ein neues Fenster wird geöffnet. Wählen Sie MVC 5 View und klicken Sie auf Hinzufügen.

Eine neue Eingabeaufforderung erscheint wie unten gezeigt.

So drucken Sie Barcodes in ASP.NET in C#, Abbildung 5: Ansichtsdialog hinzufügen Dialog "Ansicht hinzufügen"

Benennen Sie die Ansicht und klicken Sie auf Hinzufügen. Es wird eine neue Datei .cshtml erstellt.

Fügen Sie den folgenden Code in Ihre neu erstellte Ansicht ein.

@model GenerateBarcodeMVC.Models.BarcodeModel

@{
    ViewBag.DisplayBarcode = false;
}

<h2>Create</h2>

@using (Html.BeginForm())
{
    @Html.AntiForgeryToken()

    <div class="form-horizontal">
        <h4>GenerateBarcode</h4>
        <hr />
        @Html.ValidationSummary(true, "", new { @class = "text-danger" })
        <div class="form-group">
            @Html.LabelFor(model => model.FileName, htmlAttributes: new { @class = "control-label col-md-2" })
            <div class="col-md-10">
                @Html.EditorFor(model => model.FileName, new { htmlAttributes = new { @class = "form-control" } })
                @Html.ValidationMessageFor(model => model.FileName, "", new { @class = "text-danger" })
            </div>
        </div>

        <div class="form-group">
            @Html.LabelFor(model => model.BarcodeContent, htmlAttributes: new { @class = "control-label col-md-2" })
            <div class="col-md-10">
                @Html.EditorFor(model => model.BarcodeContent, new { htmlAttributes = new { @class = "form-control" } })
                @Html.ValidationMessageFor(model => model.BarcodeContent, "", new { @class = "text-danger" })
            </div>
        </div>

        <div class="form-group">
            <div class="col-md-offset-2 col-md-10">
                <img src="~/Files/@Path.GetFileName(ViewBag.FileName)" alt="Barcode" />
            </div>
        </div>

        <div class="form-group">
            <div class="col-md-offset-2 col-md-10">
                <input type="submit" value="Create" class="btn btn-default" />
            </div>
        </div>
    </div>
}

@section Scripts {
    @Scripts.Render("~/bundles/jqueryval")
}
@model GenerateBarcodeMVC.Models.BarcodeModel

@{
    ViewBag.DisplayBarcode = false;
}

<h2>Create</h2>

@using (Html.BeginForm())
{
    @Html.AntiForgeryToken()

    <div class="form-horizontal">
        <h4>GenerateBarcode</h4>
        <hr />
        @Html.ValidationSummary(true, "", new { @class = "text-danger" })
        <div class="form-group">
            @Html.LabelFor(model => model.FileName, htmlAttributes: new { @class = "control-label col-md-2" })
            <div class="col-md-10">
                @Html.EditorFor(model => model.FileName, new { htmlAttributes = new { @class = "form-control" } })
                @Html.ValidationMessageFor(model => model.FileName, "", new { @class = "text-danger" })
            </div>
        </div>

        <div class="form-group">
            @Html.LabelFor(model => model.BarcodeContent, htmlAttributes: new { @class = "control-label col-md-2" })
            <div class="col-md-10">
                @Html.EditorFor(model => model.BarcodeContent, new { htmlAttributes = new { @class = "form-control" } })
                @Html.ValidationMessageFor(model => model.BarcodeContent, "", new { @class = "text-danger" })
            </div>
        </div>

        <div class="form-group">
            <div class="col-md-offset-2 col-md-10">
                <img src="~/Files/@Path.GetFileName(ViewBag.FileName)" alt="Barcode" />
            </div>
        </div>

        <div class="form-group">
            <div class="col-md-offset-2 col-md-10">
                <input type="submit" value="Create" class="btn btn-default" />
            </div>
        </div>
    </div>
}

@section Scripts {
    @Scripts.Render("~/bundles/jqueryval")
}
HTML

Als nächstes klicken Sie mit der rechten Maustaste in die Ansicht und klicken Sie auf die Schaltfläche Im Browser ausführen.

Ausgabe

So drucken Sie Barcodes in ASP.NET in C#, Abbildung 6: Webanwendung ausführen, um das Erstellungsformular anzuzeigen Webanwendung ausführen, um das Erstellungsformular anzuzeigen

Geben Sie Ihren Barcode-Bildnamen und Barcode-Inhalt wie unten gezeigt ein:

So drucken Sie Barcodes in ASP.NET in C#, Abbildung 7: Geben Sie Ihren Barcode-Inhalt ein Geben Sie Ihren Barcode-Inhalt ein

Klicken Sie auf die Schaltfläche Create. Das Barcode-Bild wird generiert und wie unten gezeigt auf dem Bildschirm angezeigt.

So drucken Sie Barcodes in ASP.NET in C#, Abbildung 8: Generieren eines Barcodes aus einer URL Einen Barcode aus einer URL generieren

Zusammenfassung

Dieses Tutorial hat gezeigt, wie Barcodes mit ASP.NET in C# generiert werden können, kombiniert mit dem MVC Framework. Microsoft Visual Studio wird als IDE verwendet. IronPDF ist eine Drittanbieterbibliothek, die kostenlos für die Entwicklung ist und mit allen Versionen des .NET Frameworks, einschließlich der neu veröffentlichten Version, kompatibel ist. IronBarcode ist schnell und bietet viele Funktionen zur Arbeit mit Barcodes. Es kann auch QR-Codes erzeugen, indem verschiedene Typen spezifiziert werden.

Es gibt viele weitere nützliche Bibliotheken wie IronPDF zur Arbeit mit PDF-Dokumenten, IronXL zur Arbeit mit Excel-Dokumenten und IronOCR zur Arbeit mit OCR. Derzeit können Sie alle fünf Bibliotheken zum Preis von nur zwei erwerben, indem Sie das vollständige Iron Suite kaufen. Besuchen Sie unsere Lizenzierungsseite für weitere Details.

Häufig gestellte Fragen

Wie kann ich in ASP.NET MVC mit C# Barcode-Bilder generieren und drucken?

Sie können die IronBarcode-Bibliothek verwenden, um Barcode-Bilder in ASP.NET MVC-Anwendungen zu generieren und zu drucken. Dies umfasst die Erstellung eines MVC-Projekts, die Installation von IronBarcode über die Paket-Manager-Konsole und die Verwendung der `BarcodeWriter.CreateBarcode`-Methode zur Barcode-Erstellung.

Welche Schritte sind bei der Erstellung eines neuen MVC-Projekts für den Barcode-Druck erforderlich?

Um ein neues MVC-Projekt für den Barcode-Druck zu erstellen, öffnen Sie Microsoft Visual Studio, wählen Sie 'Neues Projekt erstellen', wählen Sie 'ASP.NET-Webanwendung' und dann 'MVC' aus den verfügbaren Vorlagen.

Wie installiere ich die IronBarcode-Bibliothek für die Barcode-Erstellung in C#?

Installieren Sie die IronBarcode-Bibliothek, indem Sie die Paket-Manager-Konsole in Visual Studio öffnen und den Befehl ausführen: Install-Package IronBarcode.

Wie speichere ich ein generiertes Barcode-Bild in C#?

Sie können ein generiertes Barcode-Bild mithilfe der `SaveAsJpeg`-Methode von IronBarcode speichern, indem Sie den Dateipfad angeben, an dem das Bild gespeichert werden soll.

Kann ich Barcode-Bilder in ASP.NET-Anwendungen anpassen?

Ja, IronBarcode ermöglicht die Anpassung von Barcode-Bildern, einschließlich Hinzufügen von Logos, Anmerkungen und Ändern von Größe und Dimensionen, um Ihren Anforderungen gerecht zu werden.

Wie kann ich einen generierten Barcode in einer MVC-Ansicht anzeigen?

Um einen generierten Barcode in einer MVC-Ansicht anzuzeigen, erstellen Sie eine Ansicht in Ihrem Projekt und übergeben Sie den Pfad zum Barcode-Bild mit `ViewBag` an die Ansicht. Dies ermöglicht die clientseitige Anzeige des Barcodes.

Was sollte ich tun, wenn ich während der Barcode-Erstellung auf Fehler stoße?

Verwenden Sie einen try-catch-Block in Ihrem C#-Code, um Laufzeitausnahmen, die während des Barcode-Erstellungsprozesses auftreten können, zu behandeln und dadurch eine robuste Fehlerbehandlung zu gewährleisten.

Ist es möglich, QR-Codes mit derselben Methode wie Barcodes zu generieren?

Ja, mithilfe von IronBarcode können Sie QR-Codes generieren, indem Sie das Kodierungsschema in der `BarcodeWriter.CreateBarcode`-Methode auf `QRCode` setzen.

Welche anderen Iron-Software-Bibliotheken werden für das Dokumentenmanagement empfohlen?

Neben IronBarcode bietet Iron Software weitere Bibliotheken wie IronPDF, IronXL und IronOCR an. Diese Bibliotheken bieten umfassende Lösungen für Aufgaben im Dokumentenmanagement.

Jordi Bardia
Software Ingenieur
Jordi ist am besten in Python, C# und C++ versiert. Wenn er nicht bei Iron Software seine Fähigkeiten einsetzt, programmiert er Spiele. Mit Verantwortung für Produkttests, Produktentwicklung und -forschung trägt Jordi mit immensem Wert zur kontinuierlichen Produktverbesserung bei. Die abwechslungsreiche Erfahrung hält ihn gefordert und engagiert, ...
Weiterlesen

Iron Support Team

Wir sind 24 Stunden am Tag, 5 Tage die Woche online.
Chat
E-Mail
Rufen Sie mich an