
ASP.NET MVC'de Dinamik Olarak Barkod Nasıl Oluşturulur ve Görüntülenir
ASP.NET MVC, geliştiricilerin sağlam ve dinamik web uygulamaları oluşturmasına olanak tanıyan popüler bir web geliştirme çerçevesidir. Web uygulamalarında yaygın bir gereklilik, barkod görüntülerini oluşturma ve görüntüleme yeteneğidir. Barkod görüntüleri, makine tarafından okunabilir formatta verileri temsil etmek için kullanılır ve bir barkod tarayıcısı tarafından okunabilir.
ASP.NET MVC'de dinamik olarak barkod görüntüleri oluşturmak ve görüntülemek, piyasadaki lider C# kütüphanesi IronBarcode kullanılarak gerçekleştirilebilir. Bu kütüphane, geliştiricilerin platformlar arası olarak Code 39, Code 128 ve QR Code gibi çeşitli biçimlerde barkod görüntüleri kolayca oluşturmasını sağlayan API'ler sunar. IronBarcode, .NET 6'dan itibaren Windows'a özgü olan System.Drawing.Common ve .NET Graphics API'ye bağlı kalmadan platformlar arası işlevsellik sunar ve daha fazla kaynak uyumluluğuna izin verir.
IronBarcode
IronBarcode, .NET uygulamalarında barkod görüntüleri oluşturma, okuma ve manipülasyon için geniş bir özellik yelpazesi sunan popüler bir .NET barkod kütüphanesidir. Kütüphane, .NET bileşenleri ve kütüphanelerinde uzmanlaşmış bir yazılım geliştirme şirketi olan Iron Software tarafından geliştirilir ve sürdürülenmektedir. IronBarcode, Code 128, Code 39, QR Code, Data Matrix ve PDF417 dahil olmak üzere geniş bir barkod formatı yelpazesi için destek sağlar. Kütüphane ayrıca, barkod görüntülerine metin ve logolar eklemek için özel boyutlar, renkler ve yazı tipleriyle barkodlar oluşturma özelliklerini de sağlar.
Barkod üretmenin yanı sıra, IronBarcode, barkod görüntülerini okuma ve kod çözme özelliklerini de içerir. Kütüphane, görüntülerden, PDF belgelerinden ve canlı kamera akışlarından barkod okuyup çözebilir. Hem 1D hem de 2D barkod formatlarını destekler ve kısmen gizlenmiş veya hasar görmüş barkodları bile tanıyabilir.
Gereksinimler
Bir .NET uygulamasında IronBarcode ile çalışmadan önce, karşılanması gereken birkaç ön koşul vardır.
- .NET Framework veya .NET Core: IronBarcode hem .NET Framework hem de .NET Core ile çalışacak şekilde tasarlanmıştır. Geliştirme ortamınızda uygun .NET sürümünün yüklü olduğundan emin olun.
- Visual Studio: IronBarcode, kolay geliştirme ve test için Visual Studio ile entegre edilebilir. Visual Studio Community, Professional veya Enterprise sürümleri kullanılabilir. Visual Studio web sitesinden indirilebilir.
- IronBarcode Kütüphanesi: Iron Software web sitesinden veya NuGet paketi yöneticisi üzerinden IronBarcode kütüphanesini indirip yükleyin. Kütüphane, şu komutu çalıştırarak NuGet Package Manager Console kullanılarak kurulabilir:
Install-Package BarCode.
IronBarcode geliştirme için ücretsizdir, ancak ticari ve dağıtım amaçlı lisanslanmalıdır. Tüm işlevselliğini test etmek için ücretsiz deneme deneyebilirsiniz.
Yeni ASP.NET MVC Projesi Oluşturma
Visual Studio'yu açın ve Yeni proje oluştur'a tıklayın.

Yeni pencerede, "ASP.NET MVC (Web App) Model View Controller" bulun ve seçin ve Sonraki butonuna tıklayın.

Yeni projenin adını ve konumunu girin ve Sonraki'ye tıklayın.

Kullanmak istediğiniz .NET sürümünü seçin ve diğer tüm seçenekleri oldukları gibi bırakıp Oluştur'a tıklayın.

Bir .NET projesi oluşturulur.

IronBarcode Kurulumu
1. NuGet Paket Yöneticisini Kullanma
Bu seçenek Visual Studio içinde mevcuttur ve IronBarcode paketini doğrudan çözümünüze yükleyecektir. Araçlar bölümüne gidin ve gösterildiği gibi NuGet Paket Yöneticisi'ne tıklayın.

NuGet Paket Yöneticisi arama kutusunu kullanarak IronBarcode kütüphanesini arayın. Mevcut paketlerin listesinden IronBarcode seçeneğini seçin.

2. Visual Studio Komut Satırını Kullanma
Visual Studio menüsünde Araçlar > NuGet Paket Yöneticisi > Paket Yöneticisi konsoluna gidin.

Paket yöneticisi konsol sekmesine şu satırı girin: Install-Package BarCode.
Paket mevcut projeye indirilip/yüklenecek ve kullanım için hazır hale gelecektir.

IronBarcode Kullanarak Barkod Görüntüleri Oluşturma ve Görüntüleme
Artık ortamımızı ayarladık, ASP.NET MVC'de dinamik olarak barkod görüntüsü oluşturmak için nasıl kod yazacağımıza başlayabiliriz.
Öncelikle, model klasörü altına GenerateBarcodeModel.cs adında bir sınıf oluşturun.
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 NamespaceOluşturulan barkod resimlerini depolamak için wwwroot klasörü altına "GeneratedBarcode" adında bir klasör oluşturun.

"controllers" klasörünüzdeki HomeController.cs sınıfına aşağıdaki işlem yöntemini ekleyin.
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 NamespaceYukarıdaki koddaki işlem yöntemi, daha sonra oluşturacağımız Görünümden üretilen gönderme isteğini ele alacaktır. IronBarcode ile barkod formatını, görüntü elemanını, barkod yazı tipini ve HTML görüntü elemanını özelleştirebilirsiniz. Daha fazla özelleştirme için ek kütüphaneler gerekebilir, örneğin IronDrawing barkod fontunu kurmak için. Daha detaylı API belgelerine buradan ulaşabilirsiniz.
Artık barkod oluşturucu yöntemimiz için bir görünüm oluşturabiliriz.
HomeController.cs dosyasında, CreateBarcode yöntemine sağ tıklayın ve Görünüm Ekle seçeneğine tıklayın.

Razor Görünümü seçin ve ekle'ye tıklayın.

Aşağıdaki resimde gösterilen parametreleri seçin ve Ekle'ye tıklayın. Bu yöntem için otomatik olarak bir görünüm ekleyecektir.

Oluşturulan kodu istediğiniz gibi arayüzü değiştirecek şekilde değiştirebilirsiniz.
@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");}
}
Şimdi her şey ayarlandı, sadece _Layout.cshtml dosyasını açıp CreateBarcode seçeneğini eklemek için kodu navbar içine ekleyin.
<li class="nav-item">
<a class="nav-link text-dark" asp-controller="Home" asp-action="CreateBarcode">CreateBarcode</a>
</li>
Artık uygulamayı çalıştırın, metin alanına metin yazın ve Barkod oluştur düğmesine tıklayın ve barkod görüntüsünü dinamik olarak oluşturacak ve gösterecek.
5.1. Çıktı

6. Sonuç
ASP.NET MVC uygulamalarında barkod görüntülerini dinamik olarak oluşturmak ve görüntülemek, güçlü bir .NET barkod kütüphanesi olan IronBarcode kullanılarak gerçekleştirilebilir - .NET uygulamalarında barkod görüntüleri oluşturma, okuma ve manipülasyon için geniş bir özellik yelpazesi sunar. Dot NET framework, Visual Studio ve IronBarcode kütüphanesi gibi ön gereksinimleri yerine getirerek, geliştiriciler kolayca ASP.NET MVC projeleri oluşturabilir ve Code 39, Code 128 ve QR Code gibi farklı formatlarda barkod görüntüleri oluşturabilir ve görüntüleyebilir. IronBarcode kütüphanesi, özel boyutlar, renkler ve yazı tipleriyle barkod oluşturma, ve barkod görüntülerine metin ve logolar ekleme özelliklerini geliştiricilere sağlar. Barkod üretmenin yanı sıra, IronBarcode, barkod görüntülerini okuma ve kod çözme özelliklerini de içerir. IronBarcode ile geliştiriciler, iş ihtiyaçlarını karşılayan güçlü ve dinamik web uygulamaları kolayca oluşturabilirler. Bu konu ile ilgili bir eğitimi ziyaret etmek için aşağıdaki link adresine bakın. Barkod ve QR kod oluşturma konularında adım adım bir eğitim için lütfen link adresine başvurun.

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.
İlgili Makaleler


