IRONSOFTWAREHOME
VIDEOS

Migrating from MessagingToolkit.Barcode to IronBarcode

Curtis Chau
Curtis Chau
Updated: 1. August 2026

MessagingToolkit.Barcode veröffentlichte seine letzte Version — 1.7.0.2 — im Jahr 2013 und hat seitdem keine Aktualisierungen mehr erhalten. Dieser Leitfaden beschreibt den kompletten Migrationsprozess zu IronBarcode: warum die Migration notwendig ist, welche Codeänderungen vorgenommen werden und wie man überprüft, ob die Migration abgeschlossen ist. Der Leitfaden richtet sich sowohl an Teams, die die Barcode-Funktionalität isoliert migrieren, als auch an Teams, die ein umfassenderes .NET Framework -Upgrade durchführen, für das MessagingToolkit.Barcode eine blockierende Abhängigkeit darstellt.

Warum von MessagingToolkit.Barcode migrieren?

Framework-Kompatibilitätsblocker: MessagingToolkit.Barcode zielt auf .NET Framework 3.5, 4.0 und 4.5 ab. Es hat kein .NET Standard -Ziel und kein .NET Core -Ziel. Wenn eine Projektdatei, die auf dieses Paket verweist, auf ein modernes .NET Zielframework – .NET 6, .NET 7, .NET 8 oder .NET 9 – eingestellt ist, schlägt der NuGet Wiederherstellungsvorgang mit einem Framework-Kompatibilitätsfehler fehl. Der Bauvorgang wird nicht fortgesetzt. Dies ist keine Warnung oder eine Laufzeitbeeinträchtigung; Es handelt sich um einen Kompilierfehler, der verhindert, dass das Projekt überhaupt erstellt werden kann. Das Entfernen von MessagingToolkit.Barcode ist eine Voraussetzung für jedes .NET Framework Upgrade und kein optionaler Bereinigungsschritt.

Sicherheitsrisiko: Seit der letzten Codeänderung sind zwölf Jahre vergangen. Für jede Schwachstelle, die nach 2014 in der Bildparsing-Logik der Bibliothek, ihrer von ZXing abgeleiteten Dekodierungsimplementierung oder ihren transitiven Abhängigkeiten entdeckt wurde, gibt es keinen Patch, keine Empfehlung und keinen Ansprechpartner für die Wartung. Sicherheitsüberprüfungstools kennzeichnen das Paket als verwaist. Compliance-Rahmenwerke – PCI DSS, HIPAA, SOC 2, ISO 27001 – erfordern ein aktives Patch-Management von Drittanbietersoftware. Ein nicht mehr benötigtes Paket fällt bei diesen Prüfungen aus prozessualen Gründen durch, unabhängig davon, ob eine spezifische CVE identifiziert wurde.

Eingestellte Zielplattformen: Die Metadaten des NuGet Pakets listen Silverlight 3, 4 und 5 als Zielplattformen auf; Alle drei wurden 2021 eingestellt. Aufgeführt sind Windows Phone 7.0, 7.5, 7.8 und 8.0; Die Unterstützung für diese Plattformen wurde zwischen 2014 und 2017 eingestellt. Die Bibliothek wurde nie aktualisiert, um eine Plattform zu unterstützen, die die Nachfolge dieser eingestellten Umgebungen angetreten hat.

Fähigkeitslücken: MessagingToolkit.Barcode akzeptierte nur System.Drawing.Bitmap-Eingaben, was in .NET 6 und später nur auf Windows beschränkt ist. Es wurde pro Dekodierungsaufruf ein einzelnes Ergebnis zurückgegeben, ohne Unterstützung für Bilder mit mehreren Barcodes. Es verfügte über keine PDF-Lesefunktion – Anwendungen, die Barcodes aus PDF-Dokumenten lesen mussten, benötigten einen separaten Extraktionsschritt, bevor sie die Bibliothek aufrufen konnten. Die Ausgabeerzeugung gab eine Bitmap zurück, die einen System.Drawing.Imaging-Import erforderte und eine plattformübergreifende Bereitstellung verhinderte.

Das grundsätzliche Problem

MessagingToolkit.Barcode erzwingt eine Abhängigkeit von System.Drawing und einem instanzbasierten Workflow, der mit modernen .NET-Versionen inkompatibel ist:

// MessagingToolkit.Barcode: only compiles on .NET Framework 4.5 or earlier
// System.Drawing.Bitmap throws PlatformNotSupportedException on Linux/.NET 6+
using MessagingToolkit.Barcode;
using System.Drawing;

var decoder = new BarcodeDecoder();
using (var bitmap = new Bitmap("barcode.png"))  // Windows-only in .NET 6+
{
    var result = decoder.Decode(bitmap);          // Single result or null
    if (result != null)
    {
        Console.WriteLine(result.Text);
    }
}

IronBarcode entfernt die System.Drawing-Abhängigkeit vollständig und funktioniert identisch auf Windows, Linux, macOS und Docker-Containern:

// IronBarcode: runs on .NET 6, 7, 8, 9 — Windows, Linux, macOS, Docker
using IronBarCode;

IronBarCode.License.LicenseKey = "YOUR-LICENSE-KEY";

var results = BarcodeReader.Read("barcode.png");  //NeinBitmap, no System.Drawing
foreach (var result in results)
{
    Console.WriteLine(result.Value);
}
C#

IronBarcode vs. MessagingToolkit.Barcode: Funktionsvergleich

FeatureMessagingToolkit.BarcodeIronBarcode
Letzte Aktualisierung20142026 (aktiv)
NuGet -Version1.7.0.2 (endgültig)Aktuell, regelmäßig aktualisiert
.NET 6 / 7 / 8 / 9 UnterstützungNeinJa
.NET Framework 4.6.2+NeinJa
.NET Framework 3.5-4.5JaNein
.NET Core UnterstützungNeinJa
ASP.NET CoreNeinJa
.NET BEHOBENNeinJa
BlazorNeinJa
Plattformübergreifend (Linux, macOS)NeinJa
Docker-/Container-UnterstützungNeinJa
Eingabetypen für Barcode-LesegeräteNur BitmapPfad, Datenstrom, Byte-Array, PDF
PDF-Barcode-LesenNeinJa (Muttersprachler)
Mehrere Barcodes pro BildNeinJa
Automatische FormaterkennungNeinJa
Ausgabeformate der Barcode-GenerierungNur BitmapPNG, JPEG, SVG, PDF, Byte-Array
System.Drawing-AbhängigkeitErforderlichNone
SicherheitspatchesKeine seit 2014Regelmäßige Patches
Kommerzielle UnterstützungNoneProfessionelle Unterstützung verfügbar
Ergebnis der Compliance-PrüfungAls aufgegeben markiertBesteht Standardprüfungen

Schnellstart: Migration von MessagingToolkit.Barcode zu IronBarcode

Schritt 1: Ersetzen des NuGet-Pakets

Entfernen Sie das Paket MessagingToolkit.Barcode:

dotnet remove package MessagingToolkit.Barcode
SHELL

Falls das Projekt MessagingToolkit.Barcode.dll direkt über einen <HintPath>-Eintrag in der .csproj-Datei referenziert, entfernen Sie auch diese Referenz.

IronBarcode installieren:

dotnet add package IronBarcode
SHELL

IronBarcode unterstützt .NET Framework 4.6.2 bis .NET 9. Es wird als einzelnes Paket mit allen gebündelten Abhängigkeiten installiert – es wird keine separate Grafikbibliothek oder ZXing-Referenz benötigt.

Schritt 2: Namespaces aktualisieren

Ersetzen Sie den MessagingToolkit-Namespace in jeder Datei, die auf die alte Bibliothek verweist, durch den IronBarcode-Namespace:

// Remove this
using MessagingToolkit.Barcode;
using System.Drawing;  // if used only for Bitmap input to MessagingToolkit

// Add this
using IronBarCode;

Dateien, die System.Drawing ausschließlich für den Bitmap-Typ importierten, der mit MessagingToolkit.Barcode verwendet wurde, können diesen Import entfernen, sobald IronBarcode im Einsatz ist.

Schritt 3: Lizenz initialisieren

Fügen Sie die Lizenzinitialisierung einmal beim Start der Anwendung hinzu - in Program.cs, Startup.cs oder dem entsprechenden Einstiegspunkt. Für den Produktiveinsatz ist ein Lizenzschlüssel erforderlich; Die Bibliothek arbeitet im Testmodus ohne ein solches Exemplar.

// Add once at application startup
IronBarCode.License.LicenseKey = "YOUR-LICENSE-KEY";

Beispiele für die Code-Migration

Barcodes aus Bilddateien lesen

Der alte Ansatz erforderte die Konstruktion eines Bitmap aus dem Dateipfad und übergab ihn an eine BarcodeDecoder-Instanz. IronBarcode akzeptiert den Dateipfad direkt.

MessagingToolkit.Barcode-Ansatz:

using MessagingToolkit.Barcode;
using System.Drawing;

public string ReadBarcodeValue(string imagePath)
{
    var decoder = new BarcodeDecoder();
    using (var bitmap = new Bitmap(imagePath))
    {
        var result = decoder.Decode(bitmap);
        return result?.Text;
    }
}

IronBarcode -Ansatz:

using IronBarCode;

public string ReadBarcodeValue(string imagePath)
{
    var results = BarcodeReader.Read(imagePath);
    return results.FirstOrDefault()?.Value;
}

Die IronBarcode-Version entfernt die Bitmap-Konstruktion und das null-bedingte Muster bei einem einzelnen Objekt. BarcodeReader.Read() gibt eine Sammlung zurück – eine leere Sammlung, wenn nichts gefunden wird – sodass .FirstOrDefault() die Nullüberprüfung des alten Einzelwert-Rückgabewerts ersetzt.

Zugriff auf Formatinformationen aus den Ergebnissen

MessagingToolkit.Barcode legte das erkannte Format über result.BarcodeFormat offen. IronBarcode macht es über result.Format zugänglich. Beide sind Enum-Werte im Ergebnisobjekt, jedoch mit unterschiedlichen Enum-Typnamen.

MessagingToolkit.Barcode-Ansatz:

using MessagingToolkit.Barcode;
using System.Drawing;

var decoder = new BarcodeDecoder();
using (var bitmap = new Bitmap("barcode.png"))
{
    var result = decoder.Decode(bitmap);
    if (result != null)
    {
        Console.WriteLine($"Value: {result.Text}");
        Console.WriteLine($"Format: {result.BarcodeFormat}");
    }
}

IronBarcode -Ansatz:

using IronBarCode;

var results = BarcodeReader.Read("barcode.png");
var first = results.FirstOrDefault();
if (first != null)
{
    Console.WriteLine($"Value: {first.Value}");
    Console.WriteLine($"Format: {first.Format}");
}

Der Eigenschaftenname ändert sich von .Text zu .Value und von .BarcodeFormat zu .Format. Der Enum-Typ ändert sich von BarcodeFormat (MessagingToolkit) zu BarcodeEncoding (IronBarcode), obwohl .Format.ToString() eine vergleichbare, menschenlesbare Zeichenkette für Anzeige- oder Protokollierungszwecke erzeugt.

Barcodes generieren

MessagingToolkit.Barcode verwendete ein instanzbasiertes BarcodeEncoder mit einem Property-Set-Format, bevor .Encode() aufgerufen wurde. IronBarcode verwendet eine statische Methode, die den Kodierungstyp als Parameter entgegennimmt.

MessagingToolkit.Barcode-Ansatz:

using MessagingToolkit.Barcode;

public void GenerateQrCode(string data, string outputPath)
{
    var encoder = new BarcodeEncoder();
    encoder.Format = BarcodeFormat.QrCode;
    var bitmap = encoder.Encode(data);
    bitmap.Save(outputPath);
}

IronBarcode -Ansatz:

using IronBarCode;

public void GenerateQrCode(string data, string outputPath)
{
    BarcodeWriter.CreateBarcode(data, BarcodeEncoding.QRCode)
        .SaveAsPng(outputPath);
}

Für die Erstellung von Code 128 und anderen 1D-Barcodes gilt dasselbe statische Muster mit einer anderen Codierungskonstante:

// Code 128
BarcodeWriter.CreateBarcode("PRODUCT-12345", BarcodeEncoding.Code128)
    .SaveAsPng("code128.png");

// EAN-13
BarcodeWriter.CreateBarcode("5901234123457", BarcodeEncoding.EAN13)
    .SaveAsPng("ean13.png");

Aktualisierung des Zielrahmens

Sobald MessagingToolkit.Barcode entfernt und alle Verweise ersetzt wurden, kann das Zielframework der Projektdatei aktualisiert werden. Diese Änderung wurde durch die alte Abhängigkeit verhindert und wird erst nach deren Entfernung möglich:

MessagingToolkit.Barcode-Ansatz (Projektdatei):

<PropertyGroup>
  <TargetFramework>net472</TargetFramework>
</PropertyGroup>
XML

IronBarcode Ansatz (Projektdatei):

<PropertyGroup>
  <TargetFramework>net8.0</TargetFramework>
</PropertyGroup>
XML

IronBarcode unterstützt .NET Framework 4.6.2 bis .NET 9, sodass es vor dem Abschluss des Framework-Upgrades installiert werden kann. Dadurch kann die Migration schrittweise durchgeführt werden: IronBarcode wird zusammen mit MessagingToolkit.Barcode installiert, alle Verwendungen werden ersetzt, der neue Code wird überprüft, das alte Paket wird entfernt und als letzter Schritt das Zielframework geändert.

Barcodes aus PDF-Dokumenten lesen

MessagingToolkit.Barcode bot keine PDF-Unterstützung. Das Auslesen von Barcodes aus einer PDF-Datei erforderte das Extrahieren von Bildern aus jeder Seite mithilfe einer separaten Bibliothek, bevor der Barcode-Decoder aufgerufen werden konnte. IronBarcode liest PDF-Dateien direkt mit der gleichen Methode, die auch für Bilder verwendet wird.

MessagingToolkit.Barcode-Ansatz:

// Not supported — required external PDF page extraction before decode
//Neinequivalent exists in MessagingToolkit.Barcode
C#

IronBarcode -Ansatz:

using IronBarCode;

// Read all barcodes from every page of a PDF document
var results = BarcodeReader.Read("invoice.pdf");
foreach (var barcode in results)
{
    Console.WriteLine($"Page {barcode.PageNumber}: {barcode.Value} ({barcode.Format})");
}

Anwendungen, die gescannte Dokumente, Versandmanifeste oder mehrseitige Rechnungsstapel verarbeiten, erhalten diese Funktionalität im Rahmen der Migration ohne zusätzliche Bibliothek oder Konfiguration.

MessagingToolkit.Barcode API zu IronBarcode Mapping-Referenz

MessagingToolkit.BarcodeIronBarcodeNotizen
new BarcodeDecoder()Statisch — BarcodeReader.Read()Keine Instanz erforderlich
barcodeReader.Decode(bitmap)BarcodeReader.Read(path)Akzeptiert Pfad, Datenstrom, Byte-Array oder PDF
result.Textresult.ValueImmobilie umbenannt
result.BarcodeFormatresult.FormatGrundstück umbenannt; Enum-Typ ist BarcodeEncoding
new BarcodeEncoder()Statisch — BarcodeWriter.CreateBarcode()Keine Instanz erforderlich
barcodeWriter.Format = BarcodeFormat.QrCodeBarcodeEncoding.QRCode (Parameter)Das Format wurde als Parameter übergeben, nicht als Eigenschaft.
barcodeWriter.Encode("data") gibt Bitmap zurückBarcodeWriter.CreateBarcode("data", BarcodeEncoding.QRCode)Gibt ein flüssiges Ergebnis zurück, keine Bitmap.
bitmap.Save("path.png").SaveAsPng("path.png")Fluent-Methode auf Ergebnisobjekt
BarcodeFormat.QrCodeBarcodeEncoding.QRCodeEnum-Namensraum und Wert umbenannt
BarcodeFormat.Code128BarcodeEncoding.Code128Gleicher symbolischer Name, unterschiedlicher Namensraum
BarcodeFormat.Ean13BarcodeEncoding.EAN13Die Großschreibung ist unterschiedlich
Gibt null zurück, falls nicht gefundenGibt eine leere Sammlung zurückÜberprüfen Sie .Any() oder .FirstOrDefault()
Nur Bitmap-EingabePfad, Datenstrom, Byte-Array, PDFKein System erforderlich. Zeichnung erforderlich.
Nur .NET Framework 3.5-4.5.NET 4.6.2 bis .NET 9Volle Unterstützung für modernes .NET

Gängige Migrationsprobleme und Lösungen

Problem 1: Namespace nach Paketaktualisierung nicht gefunden

Problem: Nach dem Entfernen von MessagingToolkit.Barcode und dem Hinzufügen von IronBarcode schlägt die Kompilierung mit CS0246: The type or namespace name 'BarcodeDecoder' could not be found fehl.

Lösung: Der alte Namespace using MessagingToolkit.Barcode; muss durch using IronBarCode; (beachten Sie das große C) in jeder Datei ersetzt werden, die die alte Bibliothek referenziert. Eine projektweite Suche nach der alten Namespace-Zeichenfolge findet alle betroffenen Dateien:

grep -r "using MessagingToolkit.Barcode" --include="*.cs" .
grep -r "BarcodeDecoder\|BarcodeEncoder" --include="*.cs" .
SHELL

Problem 2: Mehrdeutigkeit von BarcodeReadern zwischen Namensräumen

Problem: Wenn ein Projekt sowohl MessagingToolkit.Barcode als auch IronBarcode während einer gestuften Migration referenziert, kann BarcodeReader zwischen den beiden Namespaces mehrdeutig sein.

Lösung: Die Referenz während der Übergangszeit explizit qualifizieren:

// Use the fully qualified name while both packages are installed
var results = IronBarCode.BarcodeReader.Read("barcode.png");

Sobald alle Referenzen auf MessagingToolkit.Barcode ersetzt und das alte Paket entfernt wurden, kann der Qualifizierer weggelassen werden und die using IronBarCode;-Direktive ist ausreichend.

Problem 3: Zielframework nach Paketentfernung weiterhin auf net472 eingestellt

Problem: Nach dem Entfernen von MessagingToolkit.Barcode und der Installation von IronBarcode zielt die Projektdatei immer noch auf net472. Build-Warnungen weisen darauf hin, dass moderne .NET -APIs nicht verfügbar sind.

Lösung: Aktualisieren Sie das <TargetFramework>-Element in der .csproj-Datei, sobald die Abhängigkeit entfernt wurde. IronBarcode unterstützt sowohl net472 (über .NET Framework 4.6.2 Kompatibilität) als auch moderne Ziele. Der Wechsel zu net8.0 erfordert die Überprüfung, dass keine anderen alten Abhängigkeiten im Projekt verbleiben:

<!-- Update this line in the .csproj file -->
<TargetFramework>net8.0</TargetFramework>
XML

Führen Sie dotnet build nach der Änderung aus, um verbleibende alte Abhängigkeiten zu identifizieren, die behoben werden müssen.

MessagingToolkit.Barcode-Migrationscheckliste

Vor der Migration anfallende Aufgaben

Überprüfen Sie den Quellcode, um alle Stellen zu identifizieren, die auf MessagingToolkit.Barcode verweisen:

# Find all using statements
grep -r "using MessagingToolkit.Barcode" --include="*.cs" .

# Find decoder instantiations
grep -r "BarcodeDecoder" --include="*.cs" .

# Find encoder instantiations
grep -r "BarcodeEncoder" --include="*.cs" .

# Find decode calls
grep -r "\.Decode(" --include="*.cs" .

# Find encode calls
grep -r "\.Encode(" --include="*.cs" .

# Find project file references
grep -r "MessagingToolkit" --include="*.csproj" .
grep -r "MessagingToolkit" --include="packages.config" .
SHELL

Dokumentieren Sie alle Dateien, die Änderungen erfordern. Notieren Sie alle Orte, an denen System.Drawing.Bitmap als Eingabe für den Decoder verwendet wird – diese Verwendungen müssen ebenfalls aktualisiert werden.

Aufgaben der Code-Aktualisierung

  1. Führen Sie dotnet remove package MessagingToolkit.Barcode aus, um das Paket zu entfernen
  2. Führen Sie dotnet add package IronBarcode aus, um IronBarcode zu installieren
  3. Fügen Sie IronBarCode.License.LicenseKey = "YOUR-LICENSE-KEY"; beim Start der Anwendung hinzu
  4. Ersetzen Sie alle using MessagingToolkit.Barcode;-Anweisungen durch using IronBarCode;
  5. Ersetzen Sie alle new BarcodeDecoder()-Muster durch BarcodeReader.Read()-statische Aufrufe
  6. Ersetzen Sie alle new BarcodeEncoder()-Muster durch BarcodeWriter.CreateBarcode()-statische Aufrufe
  7. Aktualisieren Sie alle result.Text-Referenzen auf result.Value
  8. Aktualisieren Sie alle result.BarcodeFormat-Referenzen auf result.Format
  9. Aktualisieren Sie alle barcodeWriter.Format = BarcodeFormat.X-Muster, um die Codierung als Parameter zu übergeben
  10. Ersetzen Sie bitmap.Save() durch .SaveAsPng() oder die entsprechende Ausgabemethode auf dem IronBarcode-Ergebnis
  11. Entfernen Sie using System.Drawing;-Importe, wo sie nur für Bitmap-Eingaben auf MessagingToolkit verwendet wurden
  12. Aktualisieren Sie <TargetFramework> in der Projektdatei, wenn ein Framework-Upgrade Teil der Migration ist

Post-Migrationstests

  • Überprüfen Sie, dass dotnet build mit null Fehlern und null Referenzen auf MessagingToolkit abgeschlossen wird
  • Führen Sie grep -r "MessagingToolkit" --include="*.cs" . aus und bestätigen Sie null Ergebnisse
  • Testen Sie das Barcode-Lesen mit echten Barcode-Bildern aus Ihrer Anwendung und bestätigen Sie, dass .Value den erwarteten String zurückgibt
  • Testen Sie das Lesen von Barcodes mit Bildern mehrerer Barcodes und bestätigen Sie, dass alle Barcodes in der Sammlung zurückgegeben werden.
  • Testen Sie die Barcode-Generierung und überprüfen Sie, ob die Ausgabedatei dem erwarteten Format und der erwarteten Kodierung entspricht.
  • Falls die PDF-Lesefunktion verwendet wird, testen Sie diese mit einem repräsentativen PDF-Dokument und überprüfen Sie, ob die Metadaten der Seitenzahlen korrekt sind.
  • Wurde das Zielframework geändert, führen Sie die vollständige Suite in der neuen Laufzeitumgebung aus, um weitere Kompatibilitätsprobleme zu identifizieren.

Wichtigste Vorteile der Migration zu IronBarcode

Ungehinderte Framework-Upgrades: Sobald MessagingToolkit.Barcode entfernt wurde, kann das Zielframework der Projektdatei auf jede moderne .NET Version aktualisiert werden. Diese eine Änderung ermöglicht den Zugriff auf die Leistungsverbesserungen von .NET 8, die Sprachfunktionen von C# 12, native asynchrone Muster und das gesamte Ökosystem der NuGet Pakete, die .NET Standard 2.0 oder höher erfordern.

Plattformübergreifende Bereitstellung: Die interne Bildpipeline von IronBarcode ist nicht von System.Drawing abhängig, was ab .NET 6 nur auf Windows beschränkt ist. Nach der Migration können Anwendungen auf Linux-Servern, macOS-Entwicklungsumgebungen, Docker-Containern und Cloud-Funktionsruntimes bereitgestellt werden, ohne auf PlatformNotSupportedException der Barcode-Bibliothek zu stoßen.

Feststellungen zur Einhaltung der Vorschriften: IronBarcode erhält regelmäßig Sicherheitsupdates im Rahmen eines dokumentierten Wartungsprozesses. Durch den Austausch einer nicht mehr genutzten Abhängigkeit gegen eine aktiv gepflegte Abhängigkeit werden die im Rahmen von Prüfungen festgestellten Mängel gemäß PCI DSS, HIPAA, SOC 2 und ähnlichen Rahmenwerken behoben, die ein aktives Patch-Management von Drittanbieterbibliotheken erfordern.

Nativer PDF-Support: BarcodeReader.Read() akzeptiert PDF-Dateipfade direkt, wodurch ein separater PDF-Bildextraktionsschritt vor der Barcode-Decodierung entfällt. Anwendungen, die gescannte Dokumente oder Rechnungsstapel verarbeiten, profitieren von dieser Funktionalität, ohne dass neue Bibliotheken oder Pipeline-Stufen hinzugefügt werden müssen.

Erweiterte Ausgabeoptionen: Generierte Barcodes sind als PNG, JPEG, SVG, PDF oder base64-kodierte Strings über das zurückgegebene Fluent-Result-Objekt von BarcodeWriter.CreateBarcode() verfügbar. Dies ersetzt den System.Drawing.Bitmap-Rückgabetyp von MessagingToolkit.Barcode, entfernt die Windows-exklusive Ausgabebeschränkung und ermöglicht die direkte Einbettung in Webantworten oder Datenbankspeicher.

Hinweis:: MessagingToolkit und ZXing.NET sind eingetragene Marken ihrer jeweiligen Eigentümer. Diese Website ist nicht mit, unterstützt oder gesponsert von MessagingToolkit oder ZXing.NET. Alle Produktnamen, Logos und Marken sind Eigentum ihrer jeweiligen Eigentümer. Vergleiche dienen nur zu Informationszwecken und spiegeln öffentlich zugängliche Informationen zum Zeitpunkt des Schreibens wider.
Curtis Chau
Technischer Autor

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.

...
Weiterlesen

Verwandte Artikel

Key in blue circle

Holen Sie sich sofort Ihren kostenlosen 30-Tage-Testschlüssel.

Your trial license will be sent to your email address

Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.

bullet_checkedIhr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.Keine Einschränkungen. 100 % freigeschaltet. Keine Kreditkarte.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
AWS-Logo
Booking Badge

Von Millionen von Ingenieur*innen weltweit vertraut

Azure (WebApps, Funktionen v3)
Erhalten Sie Ihre unverbindliche Beratung
Füllen Sie das Formular unten aus oder senden Sie eine E-Mail an sales@ironsoftware.com
Ihre Daten werden immer vertraulich behandelt.
Von Millionen von Ingenieur*innen weltweit vertraut
Azure (WebApps, Funktionen v3)
Erhalten Sie sofort Ihren kostenlosen 30-Tage-Testschlüssel.
Ihr Testlizenzschlüssel wurde Ihnen per E-Mail gesendet.