IRONSOFTWAREHOME
UTILISATION D'IRONQR

Comment générer des codes QR dans ASP.NET Core

Curtis Chau
Curtis Chau
Updated: 21 avril 2026

Les codes QR sont devenus partie intégrante de la technologie moderne, offrant un moyen pratique de stocker et de transmettre des informations. En développement web, les générateurs de codes QR comme celui que nous allons implémenter avec IronQR dans ASP.NET Core offrent des fonctionnalités robustes pour la création dynamique de codes QR. Les générateurs de codes QR sont indispensables pour diverses applications telles que les systèmes de billetterie, l'authentification, la gestion des stocks, et bien plus encore. Cet article explore le processus de création de codes QR dans ASP.NET Core à l'aide d'IronQR, une bibliothèque puissante conçue à cet effet. ASP.NET Core, framework polyvalent pour la création d'applications web, offre des fonctionnalités robustes pour la génération de codes QR. Dans cet article, nous allons explorer le processus de création de codes QR dans ASP.NET Core à l'aide d'IronQR , une puissante bibliothèque de génération de codes QR d' Iron Software .

Comment générer des codes QR dans ASP.NET Core

  1. Créez un projet ASP.Net à l'aide de Visual Studio.
  2. Installez la bibliothèque IronQR à partir du Package Manager.
  3. Générer un code QR
  4. Générer un code QR avec mise en forme

Comprendre IronQR

IronQR est une bibliothèque de génération de codes QR haute performance pour les applications .NET. Elle fournit une API simple et intuitive pour générer des codes QR avec diverses options de personnalisation. IronQR prend en charge .NET Standard, ce qui le rend compatible avec un large éventail de plateformes, notamment ASP.NET Core. Avec IronQR, les développeurs peuvent générer sans effort des codes QR avec différents types de données, niveaux de correction d'erreurs, tailles et formats.

Caractéristiques principales

1. Lecture et création de codes QR

IronQR vous permet de générer et de lire facilement les codes QR. Que vous ayez besoin de créer des codes QR dynamiquement ou d'extraire des informations de codes existants, cette bibliothèque répond à tous vos besoins.

2. API conviviale

La bibliothèque fournit une API conviviale qui permet aux développeurs d'intégrer rapidement la fonctionnalité des codes-barres dans leurs projets .NET. Vous pouvez commencer à utiliser les codes QR en quelques minutes seulement.

3. Compatibilité

IronQR prend en charge différentes versions de .NET, notamment :

  1. C#, VB .NET, F#
  2. .NET Core (8, 7, 6, 5 et 3.1+)
  3. .NET Standard (2.0+)
  4. .NET Framework (4.6.2+)

Il couvre un large éventail de types de projets, notamment les applications web (Blazor et WebForms), mobiles (Xamarin et MAUI), de bureau (WPF et MAUI) et les applications console.

4. Modèle d'apprentissage automatique pour la détection des codes QR

IronQR utilise un modèle d'apprentissage automatique personnalisé et avancé pour détecter les codes QR. Cela garantit une reconnaissance de code précise et fiable. De plus, une option Slim Mode (non-ML) est disponible pour ceux qui préfèrent une approche légère.

5. Lecture des codes QR

Vous pouvez lire les codes QR à partir de différents formats d'image, notamment :

  1. Images (jpg, png, svg, bmp)
  2. Images multipages (gif, tif, tiff)
  3. System.Drawing Bitmaps
  4. Images de IronDrawing (AnyBitmap)

6. Écriture des codes QR

IronQR vous permet de créer des codes QR pour différents types de documents, tels que :

  1. Images (jpg, png, gif, tiff, bmp)
  2. System.Drawing Images
  3. Flux (MemoryStream, byte[])
  4. PDF (Tampon sur PDF existant)

7. Style des codes QR

Personnalisez les codes QR en les redimensionnant, en ajustant les marges et les bordures, en changeant les couleurs et en ajoutant des logos.

8. Gestion et correction des erreurs

IronQR fournit des messages d'erreur détaillés et prend en charge des niveaux de correction d'erreurs QR personnalisés.

Forts de ces connaissances, commençons par l'application permettant de générer un code QR en ASP.NET Core.

Étape 1 : Créez un nouveau projet ASP.NET à l'aide de Visual Studio

Avant de nous plonger dans la génération de codes QR, commençons par configurer un nouveau projet ASP.NET Core. Voici les étapes à suivre pour lancer un nouveau projet :

Commencez par créer un nouveau projet dans Visual Studio et sélectionnez le modèle d'application Web ASP.Net Core.

How to Generate QR Codes in ASP .NET Core: Figure 1 - Select the ASP.NET CORE web application template

Indiquez le nom et l'emplacement du projet.

How to Generate QR Codes in ASP .NET Core: Figure 2 - Name the project and the location you wish to save to

Sélectionnez la version .NET requise.

How to Generate QR Codes in ASP .NET Core: Figure 3 - Select the correct .NET version.

Cliquez sur le bouton " Créer " pour générer le code de l'application à partir du modèle.

How to Generate QR Codes in ASP .NET Core: Figure 4 - Click the "create" button to generate the template code

Étape 2 : Installez la bibliothèque IronQR à partir du Package Manager

Installez la bibliothèque IronQR à partir du gestionnaire de packages de Visual Studio comme indiqué ci-dessous.

How to Generate QR Codes in ASP .NET Core: Figure 5 - Search IronOCR using Visual Studio Package Manager and install it

IronQR peut également être installé à l'aide du gestionnaire de packages NuGet.

How to Generate QR Codes in ASP .NET Core: Figure 6 - Search for IronOCR using NuGet Package Manager

Étape 3 : Générer un code QR

Maintenant, créons une application de code QR.

Créer le modèle QRCode

using System.ComponentModel.DataAnnotations;

namespace GenerateQRCode.Models
{
    public class QRCodeModel
    {
        [Display(Name = "Enter QR Code Text")]
        public string QRCodeText { get; set; }
    }
}

Créer un contrôleur de codes QR

Pour ajouter une nouvelle manette, cliquez avec le bouton droit sur le dossier des manettes et indiquez un nom comme indiqué ci-dessous.

How to Generate QR Codes in ASP .NET Core: Figure 7 - Add a new controller by clicking on the folder and give it a name

Sélectionnez le contrôleur vide.

How to Generate QR Codes in ASP .NET Core: Figure 8 - Click Empty Controller on the prompt

Indiquez un nom.

How to Generate QR Codes in ASP .NET Core: Figure 9 - Name the controller

Ensuite, intégrez le code suivant dans le contrôleur.

using GenerateQRCode.Models;
using IronSoftware.Drawing;
using IronQr;
using Microsoft.AspNetCore.Mvc;

namespace GenerateQRCode.Controllers
{
    public class QrCodeController : Controller
    {
        private readonly IWebHostEnvironment _environment;

        public QrCodeController(IWebHostEnvironment environment)
        {
            _environment = environment;
        }

        public IActionResult Index()
        {
            return View();
        }

        [HttpPost]
        public IActionResult CreateQRCode(QRCodeModel generateQRCode)
        {
            try
            {
                string path = Path.Combine(_environment.WebRootPath, "GeneratedQRCode");
                if (!Directory.Exists(path))
                {
                    Directory.CreateDirectory(path);
                }
                string filePath = Path.Combine(_environment.WebRootPath, "GeneratedQRCode/qrcode.png");
                // Create a QR Code object
                QrCode myQr = QrWriter.Write(generateQRCode.QRCodeText);
                // Save QR Code as a Bitmap
                AnyBitmap qrImage = myQr.Save();
                // Save QR Code Bitmap as File
                qrImage.SaveAs(filePath);
                string fileName = Path.GetFileName(filePath); // qr code file
                string imageUrl = $"{this.Request.Scheme}://{this.Request.Host}{this.Request.PathBase}" + "/GeneratedQRCode/" + fileName;
                ViewBag.QrCodeUri = imageUrl;
            }
            catch (Exception)
            {
                throw;
            }
            return View();
        }
    }
}

Explication du code

Définition d'espace de noms et de classe

Le code commence par des instructions using, qui importent les espaces de noms nécessaires. L'espace de noms GenerateQRCode.Controllers contient la classe QrCodeController.

Constructeur de contrôleur

La classe QrCodeController possède un constructeur qui prend un paramètre IWebHostEnvironment. Ce paramètre est injecté par ASP.NET Core pour gérer les tâches liées à l'hébergement web.

Méthodes d'action

  • Index(): Cette méthode renvoie une vue (vraisemblablement une page HTML) lorsqu'elle est accédée. Cela ne semble pas être directement lié à la génération de codes QR.
  • CreateQRCode(QRCodeModel generateQRCode): Cette méthode est au cœur de la logique de génération du code QR. Il reçoit un objet QRCodeModel (contenant vraisemblablement le texte du code QR) comme paramètre.

À l'intérieur de la méthode

  • Crée un chemin pour enregistrer l'image du code QR généré.
  • Crée un objet code QR en utilisant QrWriter.Write(generateQRCode.QRCodeText).
  • Enregistre le code QR sous forme d'image bitmap.
  • Construit une URL d'image à partir des détails de la requête web.
  • Définit la propriété ViewBag.QrCodeUri avec l'URL de l'image.
  • Si des exceptions surviennent au cours de ce processus, elles sont levées.

Génération de codes QR

La génération du code QR proprement dite a lieu dans la méthode CreateQRCode. L'appel QrWriter.Write(generateQRCode.QRCodeText) crée un objet code QR basé sur le texte fourni.

Enregistrement d'image

Le code QR généré est enregistré sous forme d'image bitmap en utilisant qrImage.SaveAs(filePath). Le chemin d'accès au fichier image est construit à partir du chemin racine du site web et du nom de fichier souhaité.

URL de l'image

Le imageUrl est construit en utilisant le schéma, l'hôte et le chemin de base de la requête Web. Cette URL indique l'emplacement où l'image du code QR généré peut être consultée. Globalement, ce contrôleur gère la génération du code QR, l'enregistrement de l'image et la fourniture d'une URL d'image pour une utilisation ultérieure.

Ajouter une vue au contrôleur

Pour ajouter une nouvelle vue, cliquez avec le bouton droit sur la méthode d'action CreateQRCode dans la classe QrCodeController.

How to Generate QR Codes in ASP .NET Core: Figure 10 - Add a new view in the QrCodeController class

Sélectionnez " Ajouter une vue ", puis " Vue Razor ". Cliquez sur le bouton " Ajouter ".

How to Generate QR Codes in ASP .NET Core: Figure 11 - Select the Add View option, then Razor View, then Add

Ensuite, sélectionnez le modèle "Créer" et la classe Modèle générée précédemment.

How to Generate QR Codes in ASP .NET Core: Figure 12 - Select the Create template generated previously

Remplacez maintenant le code ci-dessous dans la vue

@model GenerateQRCode.Models.QRCodeModel

@{
    ViewData["Title"] = "Generate QR Code";
}

<h1>Generate QR Code</h1>
<h4>QRCodeModel</h4>
<hr />
<div class="row">
    <div class="col-md-4">
        <form asp-action="CreateQRCode">
            <div asp-validation-summary="ModelOnly" class="text-danger"></div>
            <div class="form-group">
                <label asp-for="QRCodeText" class="control-label"></label>
                <input asp-for="QRCodeText" class="form-control" />
                <span asp-validation-for="QRCodeText" class="text-danger"></span>
            </div>
            <div class="form-group">
                <a href="#" class="btn btn-primary">Create QR Code</a>
            </div>
            <div class="form-group">
                <img src="@ViewBag.QrCodeUri" class="img-thumbnail" alt="Your QR Code will appear here." />
            </div>
        </form>
    </div>
</div>
<div>
    <a asp-action="Index">Clear</a>
</div>
@section Scripts {
    @{await Html.RenderPartialAsync("_ValidationScriptsPartial");}
}

Faites de même pour la méthode d'action index, afin que l'application ne génère pas d'erreur lors du lancement de la requête POST.

Maintenant, dans Program.cs, modifiez le code suivant pour faire de la vue ci-dessus la route par défaut.

app.MapControllerRoute(
    name: "default",
    pattern: "{controller=QrCode}/{action=Index}"
);

Cette action modifiera la route par défaut de HomeController à notre QrCodeController.

Maintenant, compilez et exécutez le projet.

How to Generate QR Codes in ASP .NET Core: Figure 13 - Example homepage from the project

Saisissez du texte dans la zone de texte et cliquez sur " Créer ". Cela créera un nouveau code QR comme indiqué ci-dessous.

How to Generate QR Codes in ASP .NET Core: Figure 14 - Enter any text and click create to create a new QR code utilizing IronQR

Ajouter du style aux codes QR

QrStyleOptions sont utilisés pour styliser la génération du code QR.

[HttpPost]
public IActionResult CreateQRCode(QRCodeModel generateQRCode)
{
    try
    {
        string path = Path.Combine(_environment.WebRootPath, "GeneratedQRCode");
        if (!Directory.Exists(path))
        {
            Directory.CreateDirectory(path);
        }
        string filePath = Path.Combine(_environment.WebRootPath, "GeneratedQRCode/qrcode.png");

        // Create a QR Code object
        QrCode qrCode = QrWriter.Write(generateQRCode.QRCodeText);
        QrStyleOptions style = new QrStyleOptions
        {
            Dimensions = 300, // px size
            Margins = 10,     // px margins
            Color = Color.YellowGreen // custom color
        };

        // Save QR Code with style options as a bitmap
        AnyBitmap qrImage = qrCode.Save(style);
        // Save QR Code Bitmap to File
        qrImage.SaveAs(filePath);

        string fileName = Path.GetFileName(filePath); // qr code file
        string imageUrl = $"{this.Request.Scheme}://{this.Request.Host}{this.Request.PathBase}" + "/GeneratedQRCode/" + fileName;
        ViewBag.QrCodeUri = imageUrl;
    }
    catch (Exception)
    {
        throw;
    }
    return View();
}

Sortie

How to Generate QR Codes in ASP .NET Core: Figure 15 - Modifying the color of the QR code programmatically

Licence (Essai disponible)

Pour les développeurs qui souhaitent tester IronQR, une licence d'essai est disponible ici . Cette clé de licence doit être placée dans le fichier appSettings.json. Cela permettra de supprimer le filigrane visible sur les images ci-dessus.

{
  "IronQR.License.LicenseKey": "My key"
}
JSON

Conclusion

Dans cet article, nous avons exploré comment générer des codes QR dans ASP.NET Core en utilisant IronQR. En tirant parti de la puissance d'IronQR, les développeurs peuvent facilement intégrer la fonctionnalité de génération de codes QR dans leurs applications web. Que ce soit pour la billetterie, l'authentification ou le partage d'informations, les codes QR offrent une solution polyvalente pour transmettre efficacement des données. Avec IronQR, créer et personnaliser des codes QR dans ASP.NET Core n'a jamais été aussi simple. Commencez à intégrer la génération de codes QR dans vos projets ASP.NET Core et découvrez un monde de possibilités pour l'encodage et le partage dynamiques de données.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes et créer des manuels bien structurés et visuellement attrayants.

...
Lire la suite

Articles connexes

Key in blue circle

Obtenez votre clé d'essai de 30 jours instantanément.

Your trial license will be sent to your email address

Aucune restriction. 100 % débloqué. Pas de carte bancaire.

bullet_checkedAucune carte de crédit ou création de compte requiseAucune restriction. 100 % débloqué. Pas de carte bancaire.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
Réservez votre Démonstration en direct gratuite
Booking Badge

De confiance par des millions d'ingénieurs dans le monde entier

Logos des clients d'Iron Software
Obtenez Votre Consultation sans Engagement
Remplissez le formulaire ci-dessous ou envoyez un email à sales@ironsoftware.com
Vos informations seront toujours gardées confidentielles.
De confiance par des millions d'ingénieurs dans le monde entier
Logos des clients d'Iron Software
Obtenez votre clé d'essai 30 jours gratuitement.
Aucune carte de crédit ou création de compte requise