IRONSOFTWAREHOME
VIDEOLAR

Telerik RadBarcode'dan IronBarcode'ye Geçiş

Curtis Chau
Curtis Chau
Updated: 1 Ağustos 2026

Bu kılavuz, Telerik RadBarcode'dan IronBarcode for .NET'e geçiş yolu sunar ve bu, RadBarcode ve RadBarcodeReader'un yapabileceklerinin sınırlarına ulaşmış geliştiriciler içindir. Paket değişimi, isim alanı güncellemeleri, lisans başlatma, kod düzeyinde geçiş örnekleri, bir API eşleme referansı ve geçişin tamamlandığını doğrulamak için bir kontrol listesi içerir. Örnekler, Telerik barkod geçişlerinde en yaygın karşılaşılan senaryolara odaklanmaktadır: XAML kontrol değişimi, okuma biçimi genişletmesi, sunucu tarafı dağıtımı ve PDF işleme.

Neden Telerik RadBarcode'dan Göç Edilmeli

Telerik RadBarcode geçişleri, mevcut bileşenlerin karşılayamayacağı somut teknik gereksinimler tarafından tetiklenir. Aşağıdaki nedenler, bu geçişi tamamlamış veya değerlendiren takımlar tarafından en sık bildirilen koşulları temsil eder.

2D Okuma Sınırı: WPF'deki RadBarcodeReader bileşeni ve WinForms'daki RadBarcodeReader bileşeni, DecodeType enumu ile sınırlanan aynı okuma motorunu paylaşır. Bu enum, 1D lineer formatlar için girişleri içerir: Code128, Code39, EAN13, EAN8, UPCA, UPCE, Codabar, ITF — ve başka hiçbir şey. QR Kod, DataMatrix, PDF417 veya Aztec için giriş yok. Gelen QR kodlarını işleme veya taranmış belgelerden DataMatrix etiketlerini okuma ihtiyacı ortaya çıktığında, DecodeType kısıtlaması, Telerik ürün ailesi içinde geçici bir çözümü olmayan bir engel haline gelir.

Platform Kod Parçalanması: Telerik ile okuma, UI çerçeve bağımlılıkları gerektirir: RadBarcodeReader, WPF türlerini (BitmapImage) kullanır ve RadBarcodeReader, WinForms türlerini (System.Drawing.Image) kullanır. Bu türler, paylaşılan bir .NET kütüphanesinde, bir konsol uygulamasında, bir ASP.NET Core projesinde veya bir Blazor sunucusunda referans alınamaz. Barkod okuma mantığını paylaşılan bir hizmet katmanında merkezileştirmek isteyen bir takım, Telerik türleri ile bunu yapamaz — okuyucu uygulamaları kalıcı olarak ilgili UI çerçevelerine bağlanmıştır.

PDF İşleme Açığı: Birçok barkod iş akışı, resim dosyaları yerine belgeler üzerinde çalışır. Telerik RadBarcodeReader yalnızca bitmap resimleri kabul eder. Bir PDF sayfasına gömülü bir barkodu okumak için sayfayı ayrı bir kütüphane kullanarak bir resme dönüştürmek ve ardından bu resmi Telerik okuyucusuna beslemek gerekir - bağımlılık ekler ve hala yalnızca 1D sonuçlar alır. PDF'leri ağırlıklı olarak kullanan takımlar için bu geçici çözüm iş akışının her aşamasında sürtünme ekler.

Abonelik Lisanslama: Telerik barkod işlevselliği bağımsız bir paket olarak satılmaz. RadBarcode ve RadBarcodeReader erişimi, platforma özgü UI suite abonelikleriyle birlikte paketlenmiştir — platform başına Telerik UI abonelikleri, geliştirici başına yılda 749 dolardan (Lite seviyesi) başlar ve tüm platformlar için birleştirildiğinde DevCraft UI, geliştirici başına yılda 1.149 dolardır, bu, Telerik'in yayımladığı 2026 fiyatlandırmasına göredir. Birincil gereksinimi barkod işlevselliği olan ve diğer Telerik UI kontrollerini kullanmayan takımlar, satın alınanların küçük bir yüzdesini temsil eden bir bileşen için tüm suite maliyetini üstlenir.

Temel Sorun

Telerik okuma sınırlamasının en net ifadesi, bir formatı üreten bileşenin okuyucuda geri döndüremediğidir:

// Telerik — generates a QR code, then cannot read it back
var qrBarcode = new RadBarcode();
qrBarcode.Value = "https://example.com/order/4821";
qrBarcode.Symbology = new QRCode { ErrorCorrectionLevel = ErrorCorrectionLevel.H };
// Save to file...

// Attempt to read the same QR code:
var reader = new RadBarcodeReader();
// DecodeType.QR does not exist — QR cannot be added to this list
reader.DecodeTypes = new[] { DecodeType.Code128, DecodeType.EAN13 };
var bitmap = new BitmapImage(new Uri("qr-output.png", UriKind.Absolute));
var result = reader.Decode(bitmap);
// result == null — always, for any QR code image

IronBarcode bu açığı kapatır. Oluşturma ve okuma aynı paketi kullanır ve okuma motoru QR kodları, DataMatrix, PDF417 ve diğer tüm formatları otomatik olarak algılar:

// NuGet: dotnet add package IronBarcode
using IronBarCode;

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

// Generate a QR code
BarcodeWriter.CreateBarcode("https://example.com/order/4821", BarcodeEncoding.QRCode)
             .SaveAsPng("qr-output.png");

// Read that same QR code back — no format specification needed
var results = BarcodeReader.Read("qr-output.png");
Console.WriteLine(results.First().Value);
// Output: https://example.com/order/4821

IronBarcode ile Telerik RadBarcode: Özellik Karşılaştırması

ÖzellikTelerik RadBarcodeIronBarcode
1D barkod oluşturmaEvet (tüm platformlar)Evet
2D barkod oluşturmaEvet (tüm platformlar)Evet
1D barkod okumaYalnızca WPF + WinFormsEvet (tüm platformlar)
QR kodu okumaSadece WPFEvet (tüm platformlar)
DataMatrix okumaSadece WPFEvet (tüm platformlar)
PDF417 okumaSadece WPFEvet (tüm platformlar)
Aztec okumaMevcut değilEvet
PDF dosyası okumaMevcut değilEvet (yerel)
Otomatik format algılamaHayır — DecodeType gerekliEvet
ASP.NET Core okumaMevcut değilEvet
Blazor okumaMevcut değilEvet
Docker / Linux okumaMevcut değilEvet
Paylaşılan servis kütüphanesiMümkün değil (platform türleri)Evet
Statik okuma API'siHayır (örnek gerektirir)Evet
Bağımsız NuGet paketiHayır — UI paketi gereklidirEvet
Süresiz lisansSürekli seviye, abonelikle birlikte mevcutturEvet — $999'dan (Lite)

Hızlı Başlangıç

Adım 1: NuGet Paketini Değiştirin

Projenizdeki platform veya platformlar için Telerik UI paketini kaldırın:

# WPF
dotnet remove package Telerik.UI.for.Wpf.60.Xaml

# WinForms
dotnet remove package Telerik.UI.for.WinForms.Common
dotnet remove package Telerik.UI.for.WinForms.Barcode

# Blazor
dotnet remove package Telerik.UI.for.Blazor
SHELL

Projeniz aynı paketten diğer Telerik kontrollerini de kullanıyorsa, paketi yerinde bırakın ve 2. adıma geçin. Paylaşılan paketi kaldırmadan barkoda özgü API çağrılarını kaldıracaksınız.

IronBarcode'u kurun:

dotnet add package IronBarcode
SHELL

Bir paket, WPF, WinForms, ASP.NET Core, Blazor Sunucusu, konsol uygulamaları, Docker, Azure İşlevleri ve AWS Lambda'yı kapsar. tam platform uyumluluk detayları desteklenen tam .NET sürümleri ve işletim sistemi hedeflerini belgelemektedir.

Adım 2: Ad Alanlarını Güncelleyin

Telerik barkod isim alanı alımlarını kaldırın ve bunları IronBarcode isim alanı ile değiştirin:

// Remove these namespace imports:
// using Telerik.Windows.Controls.Barcode;      // WPF reader and generator
// using Telerik.Windows.Controls;              // WPF general
// using Telerik.WinControls.UI;               // WinForms
// using Telerik.WinControls.UI.Barcode;        // WinForms barcode reader

// Add this:
using IronBarCode;

Adım 3: Lisansa İzin Verin

Telerik lisans başlatmasını uygulama başlangıcında IronBarcode anahtar göreviyle değiştirin:

// Remove:
// Telerik.WinControls.TelerikLicenseManager.InstallLicense("key");

// Add at application startup (Program.cs, App.xaml.cs, or composition root):
IronBarCode.License.LicenseKey = "YOUR-LICENSE-KEY";

Anahtar görevi uygulama giriş noktasına bir kez gider. Dağıtılacak lisans dosyası yok, her platform için başlatma yolu yok ve WPF eyası ASP.NET Core için ayrı yapılandırma yok.

Kod Göç Örnekleri

Barkod Üretimi: XAML Kontrolünden Koda Dayalı API'ye

Telerik'in WPF'deki oluşturma yöntemi deklaratiftir — RadBarcode XAML elemanı doğrudan UI ağacına işler. IronBarcode, bar kodlarını kod yoluyla oluşturur ve WPF gösterimi için dosya olarak kaydedilebilen veya BitmapSource'ye dönüştürülebilen bir GeneratedBarcode nesnesi döndürür.

Telerik Yaklaşımı:

<!-- WPF XAML — RadBarcode renders inline in the UI -->
<Window xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation">
    <telerik:RadBarcode Value="PROD-2026-00184" Symbology="Code128" />
</Window>
XML
@* Blazor — TelerikBarcode renders as a Razor component *@
<TelerikBarcode Value="PROD-2026-00184" Type="@BarcodeType.Code128" />
Text

IronBarcode Yaklaşımı:

// NuGet: dotnet add package IronBarcode
using IronBarCode;

// Save to file — replaces XAML generation + manual export
BarcodeWriter.CreateBarcode("PROD-2026-00184", BarcodeEncoding.Code128)
             .ResizeTo(400, 100)
             .SaveAsPng("barcode.png");

// Display in WPF — assign to an Image control's Source property
var bitmapSource = BarcodeWriter.CreateBarcode("PROD-2026-00184", BarcodeEncoding.Code128)
                                .ToBitmapSource();
barcodeImageControl.Source = bitmapSource;

// Serve in Blazor or ASP.NET Core — return as base64 src attribute
byte[] bytes = BarcodeWriter.CreateBarcode("PROD-2026-00184", BarcodeEncoding.Code128)
                            .ResizeTo(400, 100)
                            .ToPngBinaryData();
string imgSrc = $"data:image/png;base64,{Convert.ToBase64String(bytes)}";

BarcodeEncoding enumu, Telerik'in Symbology enumu ile aynı sembolojileri kapsar. QR kod üretimine geçiş, yalnızca enum argümanı değiştirir. 2D barkod üretim seçeneklerinin tam yelpazesi için, QR hata düzeltme seviyeleri ve DataMatrix boyutları dahil, IronBarcode belgeleri kapsamlı örnekler sağlar.

Bilgisayar Uygulamalarından Barkod Okuma

Telerik, masaüstü platformları için iki ayrı okuyucu sınıfı sağlar — WPF için RadBarcodeReader ve WinForms için RadBarcodeReader — farklı sınıf isimleri, farklı özellik isimleri ve farklı giriş türleri ile. IronBarcode, her iki projede de aynı şekilde çalışan tek bir statik çağrı ile her ikisinin yerini alır.

Telerik WPF Yaklaşımı:

WPF okuması için bir RadBarcodeReader örneği, açık bir DecodeType yapılandırması, bir URI'den yüklenen bir BitmapImage nesnesi ve bir reader.Decode() çağrısı gereklidir. Sonuç özelliği .Text'dir.

using Telerik.Windows.Controls.Barcode;
using System.Windows.Media.Imaging;

public string ReadProductBarcode(string imagePath)
{
    var reader = new RadBarcodeReader();
    reader.DecodeTypes = new DecodeType[]
    {
        DecodeType.Code128,
        DecodeType.Code39,
        DecodeType.EAN13,
        DecodeType.EAN8,
        DecodeType.UPCA,
        DecodeType.UPCE,
        DecodeType.Codabar,
        DecodeType.ITF
    };

    var bitmap = new BitmapImage(new Uri(imagePath, UriKind.Absolute));
    var result = reader.Decode(bitmap);

    return result?.Text ?? "No barcode found";
}

Telerik WinForms Yaklaşımı:

WinForms RadBarcodeReader sınıfı, farklı bir isim, farklı bir özellik ismi (DecodeType tekil yerine DecodeTypes çoğul) kullanır ve bir System.Drawing.Image alır, BitmapImage yerine.

using Telerik.WinControls.UI.Barcode;
using System.Drawing;

public string ReadShippingLabel(string imagePath)
{
    var reader = new RadBarcodeReader();
    reader.DecodeType = new DecodeType[]
    {
        DecodeType.Code128,
        DecodeType.ITF,
        DecodeType.EAN13
    };

    using var image = Image.FromFile(imagePath);
    var result = reader.Read(image);

    return result?.Text ?? "No barcode found";
}

IronBarcode Yaklaşımı:

// NuGet: dotnet add package IronBarcode
using IronBarCode;

public string ReadProductBarcode(string imagePath)
{
    var results = BarcodeReader.Read(imagePath);
    return results.FirstOrDefault()?.Value ?? "No barcode found";
}

BarcodeReader.Read(), statik bir metottur — bir okuyucu örneği gerekmez. Doğrudan dosya yolu dizelerini kabul eder, BitmapImage veya System.Drawing.Image yüklemesi gerektirmez. 50'den fazla desteklenen türde format tespiti otomatiktir. Sonuç özelliği .Value yerine .Text'dir. Aynı çağrı, WPF ve WinForms uygulamalarında değişiklik yapmadan çalışır — platforma özgü bir varyant yoktur. Ayrıca görüntüde mevcut olan QR kodlarını, DataMatrix ve diğer tüm formatları okur, Telerik okuyucularının yalnızca 1D formatlarla sınırlandığı gibi değil.

QR Kodlarını Okuma: Telerik ile Önceden İmkansızdı

Kod tabanınızda QR okumanın mevcut olmadığını belgeleyen bir yorum veya NotSupportedException varsa, bu onun yerini alır. Telerik'te QR okumasını etkinleştiren bir yapılandırma yolu yoktur — bu senaryo için bir Telerik eşdeğeri yoktur.

Telerik Yaklaşımı:

// RadBarcodeReader does not support QR codes.
// DecodeType.QR does not exist in the Telerik enum.
public string ReadQrCode(string imagePath)
{
    throw new NotSupportedException(
        "Telerik RadBarcodeReader cannot read QR codes. " +
        "DecodeType.QR is not a valid enum value.");
}

IronBarcode Yaklaşımı:

// NuGet: dotnet add package IronBarcode
using IronBarCode;

public string ReadQrCode(string imagePath)
{
    // QR codes, DataMatrix, PDF417, and Aztec are all detected automatically
    var results = BarcodeReader.Read(imagePath);
    return results.FirstOrDefault()?.Value ?? "No QR code found";
}

EAN-13 bar kodlarını okuyan aynı BarcodeReader.Read() çağrısı QR kodlarını da okur. 2D formatlar için ayrı bir yapılandırma yoktur. Okuma ve üretim boyunca desteklenen barkod formatlarının tam listesi için, IronBarcode belgeleri format spesifik notlarla tüm 50+ girdiyi kapsar.

ASP.NET Core Uç Noktasında Barkod Okuma

Telerik, ASP.NET Core veya Blazor için bir barkod okuma bileşeni sağlamaz. Mevcut bir uygulama, web katmanında bir Telerik okuyucu olmadığı için okuma için yüklenen görüntüleri bir masaüstü hizmetine yönlendirirse, bu geçici çözüm, web katmanında doğrudan okuma ile değiştirilir.

Telerik Yaklaşımı:

// No Telerik reading API available in ASP.NET Core.
// Workaround: forward uploaded file to a WPF or WinForms service
// that can reference Telerik.Windows.Controls.Barcode.
[HttpPost("read")]
public async Task<IActionResult> ReadBarcode(IFormFile imageFile)
{
    // Must proxy to desktop service — no Telerik reader available here
    var bytes = await ReadAllBytesAsync(imageFile);
    var result = await _desktopBridgeService.ReadAsync(bytes);
    return Ok(result);
}

IronBarcode Yaklaşımı:

// NuGet: dotnet add package IronBarcode
using IronBarCode;
using Microsoft.AspNetCore.Mvc;

[ApiController]
[Route("api/barcode")]
public class BarcodeController : ControllerBase
{
    [HttpPost("read")]
    public IActionResult ReadBarcode(IFormFile imageFile)
    {
        using var stream = imageFile.OpenReadStream();
        var results = BarcodeReader.Read(stream);
        return Ok(results.Select(r => new
        {
            Format = r.BarcodeType.ToString(),
            Value = r.Value
        }));
    }

    [HttpGet("generate")]
    public IActionResult GenerateBarcode([FromQuery] string data)
    {
        var bytes = BarcodeWriter.CreateBarcode(data, BarcodeEncoding.Code128)
                                 .ResizeTo(400, 100)
                                 .ToPngBinaryData();
        return File(bytes, "image/png");
    }
}

BarcodeReader.Read(), bir Stream'yi doğrudan kabul eder, bu nedenle yüklenen dosya akışı diske yazılmadan iletilir. Bu denetleyici, Linux, Docker veya Azure App Service'e değişiklik yapmadan dağıtılır.

PDF Dosyalarından Barkod Okuma

Telerik'in PDF barkod okuma yeteneği yoktur. Mevcut bir Telerik tabanlı kod tabanına PDF okuma eklemek, sayfaları RadBarcodeReader'ye iletmeden önce görüntülere dönüştürmek için bir PDF oluşturma kütüphanesi gerektirir. IronBarcode PDF dosyalarını doğrudan okur.

Telerik Yaklaşımı:

// No direct PDF reading support in RadBarcodeReader.
// Workaround: use a separate PDF library to extract page images
using SomePdfLibrary; // third-party dependency
using Telerik.Windows.Controls.Barcode;

public List<string> ReadBarcodesFromPdf(string pdfPath)
{
    var results = new List<string>();
    var pages = PdfRenderer.ExtractPages(pdfPath); // third-party call

    foreach (var pageImage in pages)
    {
        var reader = new RadBarcodeReader();
        reader.DecodeTypes = new[] { DecodeType.Code128, DecodeType.EAN13 };
        var bitmap = ConvertToBitmapImage(pageImage); // conversion required
        var result = reader.Decode(bitmap);
        if (result != null)
            results.Add(result.Text); // 1D only — QR codes on PDF pages are missed
    }
    return results;
}

IronBarcode Yaklaşımı:

// NuGet: dotnet add package IronBarcode
using IronBarCode;

public List<string> ReadBarcodesFromPdf(string pdfPath)
{
    var results = BarcodeReader.Read(pdfPath);
    return results.Select(r =>
        $"Page {r.PageNumber}: {r.BarcodeType}{r.Value}").ToList();
}

Ayrı bir PDF kütüphanesi gerekli değildir. Sayfa çıkarma adımı yok. Görsel dönüşüm yok. PDF yolunu iletin ve IronBarcode tüm sayfaları işler, tüm barkodları sayfa numarası takibi ile döndürür. PDF sayfalarındaki 1D ve 2D barkodlar tespit edilir.

Telerik RadBarcode API ile IronBarcode Eşleme Referansı

Telerik RadBarcodeIronBarcode
TelerikLicenseManager.InstallLicense("key")IronBarCode.License.LicenseKey = "key"
<telerik:RadBarcode Value="..." Symbology="Code128" />BarcodeWriter.CreateBarcode(data, BarcodeEncoding.Code128)
<TelerikBarcode Type="@BarcodeType.Code128" />Sunucu tarafı oluşturma ToPngBinaryData() döndürür
Symbology.Code128BarcodeEncoding.Code128
Symbology.QRCodeBarcodeEncoding.QRCode
new RadBarcodeReader() (WPF)Statik sınıf — örnek gerekmez
new RadBarcodeReader() (WinForms)Statik sınıf — örnek gerekmez
reader.DecodeTypes = new DecodeType[] { ... } (WPF)Otomatik algılama – spesifikasyon gerekmiyor
reader.DecodeType = new DecodeType[] { ... } (WinForms)Otomatik algılama – spesifikasyon gerekmiyor
reader.Decode(bitmapImage) (WPF)BarcodeReader.Read(imagePath)
reader.Read(drawingImage) (WinForms)BarcodeReader.Read(imagePath)
result.Textresult.Value
result.Symbologyresult.BarcodeType
BitmapImage girdi olarak gereklidir (WPF)Dosya yolu, Stream veya bayt dizisi kabul edilir
System.Drawing.Image girdi olarak gereklidir (WinForms)Dosya yolu, Stream veya bayt dizisi kabul edilir
Sadece okuma için 1D formatlarTüm 2D türler dahil olmak üzere 50+ format
Yalnızca WPF ve WinForms okumaTüm .NET platformları
PDF okuma desteği yokBarcodeReader.Read("file.pdf") — yerel

Yaygın Göç Sorunları ve Çözümleri

Sorun 1: XAML Barkod Kontrol Değişimi

Telerik: <telerik:RadBarcode>, WPF UI eleman ağacında doğrudan işlerken görsel bir kontroldür. Kod arkası değişiklikleri olmadan, Image elemanıyla değiştirilemez.

Çözüm: <telerik:RadBarcode> elemanını bir <Image> denetimi ile değiştirin ve barkodu kod arkasında oluşturun. Image.Source'yi IronBarcode tarafından oluşturulan bir BitmapSource'ye bağlayın:

// In code-behind or ViewModel
using IronBarCode;

var generated = BarcodeWriter.CreateBarcode(barcodeValue, BarcodeEncoding.Code128)
                             .ResizeTo(400, 100);
BarcodeImage.Source = generated.ToBitmapSource();

Blazor için, <TelerikBarcode> ile sunucu tarafında oluşturulan base64 şifreli PNG alan bir <img> elemanıyla değiştirin.

Sorun 2: DecodeType Kaldırma Yan Etkileri

Telerik: DecodeTypes (WPF) veya DecodeType (WinForms) özelliği, okuyucunun tespit etmeye çalıştığı formatları filtreler. Bu filtreyi bir IronBarcode geçişinde kaldırmak, IronBarcode'un artık görüntüde bulunan tüm formatlar için sonuç döndüreceği anlamına gelir, bu da filtre tarafından önceden dışlanan formatları içerir.

Çözüm: DecodeType atama bloğunu tamamen kaldırın. Ek tespit edilen formatlar, kodun yalnızca bir barkod formatının döndürüleceğini varsaydığı durumlarda, alt akış lojiklerinde beklenmeyen sonuçlara neden olabilir — BarcodeReaderOptions kullanarak isteğe bağlı filtreler ekleyin:

using IronBarCode;

var options = new BarcodeReaderOptions
{
    ExpectedBarcodeTypes = BarcodeEncoding.Code128 | BarcodeEncoding.EAN13
};
var results = BarcodeReader.Read(imagePath, options);

Bu isteğe bağlıdır. Varsayılan davranış (tüm formatları algıla) çoğu kullanım durumu için doğrudur ve önceki Telerik uygulamasının sağlayamadığı sonuçları üretir.

Sorun 3: TelerikLicenseManager Temizliği

Telerik: Telerik.WinControls.TelerikLicenseManager.InstallLicense(key) çağrıları, uygulama başlatıldığında, genellikle Program.cs (WinForms) veya App.xaml.cs (WPF) içinde görünür. Anahtar genellikle uygulama ayarlarında, bir yapılandırma dosyasında saklanır veya başlangıç yöntemine sert kodlanır.

Çözüm: TelerikLicenseManager.InstallLicense() çağrısını kaldırın. Aynı başlatma konumunda IronBarcode anahtar atamasıyla değiştirin:

// Remove:
// Telerik.WinControls.TelerikLicenseManager.InstallLicense("TELERIK-KEY");

// Add:
IronBarCode.License.LicenseKey = "YOUR-LICENSE-KEY";

Telerik paketi yüklü kalırsa (çünkü diğer barkod dışı Telerik kontrolleri hala kullanılıyor), bu kontroller için TelerikLicenseManager çağrısı korunmalıdır. Sadece çağrıyı kaldırın, eğer Telerik paketlerinin kendileri tamamen kaldırılıyorsa.

Telerik RadBarcode Geçiş Kontrol Listesi

Geçiş Öncesi Görevler

Kod değişiklikleri yapmadan önce kod tabanında tüm Telerik barkod kullanımlarının denetimini yapın:

# License initialization
grep -r "TelerikLicenseManager.InstallLicense" --include="*.cs" .

# XAML generation controls
grep -r "RadBarcode" --include="*.xaml" .
grep -r "TelerikBarcode" --include="*.razor" .

# Code-behind generation references
grep -r "RadBarcode" --include="*.cs" .
grep -r "Symbology\." --include="*.cs" .

# Reading API — WPF
grep -r "RadBarcodeReader" --include="*.cs" .
grep -r "DecodeTypes\." --include="*.cs" .
grep -r "reader\.Decode(" --include="*.cs" .

# Reading API — WinForms
grep -r "BarCodeReader" --include="*.cs" .
grep -r "DecodeType\." --include="*.cs" .
grep -r "reader\.Read(" --include="*.cs" .

# Result property access
grep -r "result\.Text" --include="*.cs" .
grep -r "result\.Symbology" --include="*.cs" .
SHELL

Her eşleşmeyi belgeleyin. Hangi dosyaların XAML kontrolleri içerdiğini, hangilerinin okuma kodu içerdiğini ve her bir dosyanın hangi platforma ait olduğunu not alın.

Kod Güncelleme Görevleri

  1. Telerik barkod NuGet paketlerini kaldırın (veya diğer kontroller için gerekliyse saklayın)
  2. Bar kod işlevselliği gerektiren her projede IronBarcode NuGet paketini kurun
  3. Her uygulama başlangıç noktası girişine IronBarCode.License.LicenseKey = "YOUR-LICENSE-KEY" ekleyin
  4. Telerik ad alanı importlarını kaldırın ve using IronBarCode ekleyin
  5. <telerik:RadBarcode> XAML elemanlarını <Image> kontrolleri ile değiştirin
  6. BarcodeWriter.CreateBarcode(...).ToBitmapSource() kullanarak kod arkasında barkod görüntüleri oluşturun
  7. <TelerikBarcode> Razor bileşenlerini sunucu tarafında oluşturulan base64 <img> kaynakları ile değiştirin
  8. new RadBarcodeReader() örneklerini BarcodeReader.Read(path) statik çağrılar ile değiştirin
  9. new RadBarcodeReader() örneklerini BarcodeReader.Read(path) statik çağrılar ile değiştirin
  10. Tüm reader.DecodeTypes = new DecodeType[] { ... } ve reader.DecodeType = new DecodeType[] { ... } bloklarını silin
  11. reader.Decode(bitmapImage) çağrılarını BarcodeReader.Read(imagePath) ile değiştirin
  12. reader.Read(drawingImage) çağrılarını BarcodeReader.Read(imagePath) ile değiştirin
  13. Tüm okuma sonuç erişim noktalarında result.Text adını result.Value olarak değiştirin
  14. Tüm format kontrol noktalarında result.Symbology adını result.BarcodeType olarak değiştirin
  15. Symbology.Code128 ve benzer oluşturma enum değerlerini BarcodeEncoding.Code128 ile değiştirin
  16. Telerik paketlerinin tamamen kaldırıldığı yerlerde TelerikLicenseManager.InstallLicense() çağrılarını kaldırın

Geçiş Sonrası Testler

  • Önceden okunan 1D barkodlarının (Code128, EAN13, vb.) doğru değerler döndürmeye devam ettiğinden emin olun
  • Test görüntülerinde QR kodlarının artık null yerine başarıyla okunduğunu doğrulayın
  • Üretilen barkodların (PNG olarak kaydedilen veya bayt olarak sunulan) görünür şekilde render edildiğini ve doğru bir şekilde tarandığını test edin
  • Daha önce okuma yapamayan ASP.NET Core veya Blazor uç noktalarının artık doğru bir şekilde işlev gördüğünden emin olun
  • PDF okuma eklendiyse, her PDF sayfasında barkodların doğru sayfa numaralarıyla algılandığını onaylayın
  • Kalan herhangi bir Telerik barkod API referansı olmadığını doğrulamak için Ön-Göç bölümünden grep denetim komutlarını çalıştırın
  • İlk BarcodeReader.Read() veya BarcodeWriter.CreateBarcode() çağrısından önce IronBarCode.License.LicenseKey ayarlandığını doğrulayın

IronBarcode'a Geçmenin Temel Faydaları

Tam 2D Format Desteği: Geçişten sonra, QR Code, DataMatrix, PDF417 ve Aztec formatları, daha önce Code128 ve EAN13'ü okuyan aynı API çağrısıyla okunabilir. Ek yapılandırma gerekmez ve 2D formatlar için ayrı bir kütüphane gerekli değildir. Okuma motoru biçim tanımlaması otomatik olarak gerçekleşir.

Bütünleşik Çapraz Platform API: Aynı BarcodeReader.Read() ve BarcodeWriter.CreateBarcode() çağrıları WPF, WinForms, ASP.NET Core, Blazor, konsol uygulamaları ve Docker konteynerlerinde aynı şekilde derlenir ve çalıştırılır. Bir paylaşılan hizmet kütüphanesinde bir kere yazılan barkod mantığı, çözümdeki her proje türü üzerinde değişiklik yapmadan çalışır.

Yerel PDF Dosya İşleme: IronBarcode, PDF dosyalarından doğrudan barkodları okur, tüm sayfaları işleyip, sayfa numarası meta verileri ile sonuçları döndürür. Daha önce bir PDF render kütüphanesi artı bir Telerik okuma adımı gerektiren iş akışları, üçüncü taraf bağımlılığını ve ara görüntü dönüştürme adımını kaldırarak tek bir metot çağrısına birleştirilir.

Barkod Erişimi İçin Abonelik Bağımlılığı Kaldırıldı: Geçişten sonra, barkod işlevselliği, IronBarcode'un süresiz lisanslama modeli aracılığıyla elde edilebilir. Sürekli erişim yıllık yenileme gerektirmez. Birincil Telerik suite kullanımı barkod ile ilgili olan takımlar, tekrar eden lisanslama yüklerini tek seferlik bir maliyete indirir.

Basitleştirilmiş Kod Tabanı: DecodeType yapılandırma bloğu, BitmapImage yükleme adımı, platforma özgü okuyucu sınıf seçimi ve result.Text özellik zinciri, otomatik algılayan sonuç koleksiyonuna sahip tek bir statik yöntem çağrısı ile değiştirilir. Daha önce WPF ve WinForms okuması için farklı uygulamalar gerektiren kod, tek bir paylaşılan uygulamaya dönüşür.

Lütfen dikkate alın: Telerik, ilgili sahibinin tescilli ticari markasıdır. Bu site, Progress Software ile ilişkili, onaylanmış veya desteklenmiş değildir. Tüm ürün adları, logolar ve markalar kendi sahiplerine aittir. Karşılaştırmalar, yalnızca bilgilendirme amaçlıdır ve yazı sırasında halka açık bilgilerle alakalı olarak yansıtılmaktadır.
Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapılandırılmış, görsel olarak çekici kılavuzlar oluşturmayı seviyor.

...
Daha Fazla Oku

İlgili Makaleler

Key in blue circle

Ücretsiz 30 günlük Deneme Anahtarınızı anında edinin.

Your trial license will be sent to your email address

Herhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.

bullet_checkedKredi kartı veya hesap oluşturma gerektirmezHerhangi bir sınırlama yoktur. %100 erişim. Kredi kartı gerekmez.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Ücretsiz Canlı Demo rezervasyonu yapın
Booking Badge

Dünya Çapında Milyonlarca Mühendisin Güvendiği

Iron Software müşteri logoları
Bağımsız Danışmanlık Alın
Aşağıdaki formu doldurun veya sales@ironsoftware.com adresine e-posta gönderin
Bilgileriniz daima gizli kalacaktır.
Dünya Çapında Milyonlarca Mühendisin Güvendiği
Iron Software müşteri logoları
Ücretsiz 30 Günlük Deneme Anahtarınızı anında alın.
Kredi kartı veya hesap oluşturma gerektirmez