Générer des Codes QR avec C#
Les développeurs C# peuvent utiliser QRCoder, une bibliothèque .NET populaire, pour générer des codes QR dans les applications ASP.NET, WPF, MAUI et console. Aucune dépendance externe requise.
Installation
Installez QRCoder via le Gestionnaire de Paquets NuGet.
dotnet add package QRCoderInstall-Package QRCoderGénérer des Codes QR avec QRCoder
Exemples de code utilisant la bibliothèque QRCoder en C#.
Basic QR Code with QRCoder
using QRCoder;
var qrGenerator = new QRCodeGenerator();
var qrData = qrGenerator.CreateQrCode("https://qrcode.fun",
QRCodeGenerator.ECCLevel.Q);
// PNG output
var qrCode = new PngByteQRCode(qrData);
byte[] pngBytes = qrCode.GetGraphic(20);
File.WriteAllBytes("qrcode.png", pngBytes);SVG Output
using QRCoder;
var qrGenerator = new QRCodeGenerator();
var qrData = qrGenerator.CreateQrCode("https://qrcode.fun",
QRCodeGenerator.ECCLevel.Q);
var svgQrCode = new SvgQRCode(qrData);
string svgString = svgQrCode.GetGraphic(20,
"#1A2B3C", "#FFFFFF");
File.WriteAllText("qrcode.svg", svgString);ASP.NET Core Endpoint
app.MapGet("/qr", (string data) =>
{
var qrGenerator = new QRCodeGenerator();
var qrData = qrGenerator.CreateQrCode(data,
QRCodeGenerator.ECCLevel.Q);
var qrCode = new PngByteQRCode(qrData);
byte[] png = qrCode.GetGraphic(20);
return Results.File(png, "image/png");
});Générer des Codes QR via API en C#
Appelez l'API QRCode.fun depuis C# avec HttpClient pour des codes QR stylisés.
using System.Net.Http.Json;
var client = new HttpClient();
var payload = new {
data = "https://qrcode.fun",
width = 300,
height = 300,
type = "png",
margin = 10,
dotsOptions = new { color = "#1A2B3C", type = "rounded" },
cornersSquareOptions = new { color = "#8564C3", type = "extra-rounded" },
backgroundOptions = new { color = "#FFFFFF" }
};
var response = await client.PostAsJsonAsync(
"https://qrcode.fun/api/generate-qr-styled", payload);
var result = await response.Content.ReadFromJsonAsync<JsonElement>();
Console.WriteLine(result.GetProperty("data").GetString()?[..50]);Aperçu du Code QR en Direct
Essayez de générer un code QR avec C# maintenant.
Bibliothèque Native vs API
Comparez l'utilisation de QRCoder avec l'API QRCode.fun.
| Fonctionnalité | QRCoder | QRCode.fun API |
|---|---|---|
| Complexité de configuration | Installation NuGet | Une seule requête HTTP via HttpClient |
| Personnalisation | Couleurs, logos, formes (ArtQRCode) | Stylisation complète : couleurs, formes, logos |
| Support hors ligne | Oui | Nécessite internet |
| Maintenance | Mise à jour NuGet | Toujours à jour |
| Formats de sortie | PNG, SVG, PDF, ASCII | PNG, SVG |
Cas d'Utilisation des Codes QR en C#
Scénarios courants pour les codes QR dans les applications .NET.
APIs Web ASP.NET
Générez des codes QR dans les APIs ASP.NET Core pour les billets, factures, jetons d'authentification et pages produits.
Applications Bureau WPF et MAUI
Créez des applications bureau avec génération de codes QR pour les étiquettes, cartes de visite et suivi d'actifs.
Azure Functions
Déployez la génération de QR comme Azure Functions serverless déclenchées par des requêtes HTTP ou messages de file d'attente.
Rapports et PDF
Intégrez des codes QR dans des rapports PDF et documents avec QuestPDF ou iTextSharp pour les paiements et le suivi.
Plongée Approfondie dans l'Écosystème des Codes QR en C#
L'écosystème .NET fournit une génération de codes QR de qualité entreprise sur les plateformes web, bureau, mobiles et cloud.
Middleware ASP.NET Core et Injection de Dépendances
Enregistrez QRCoder comme service scoped dans le conteneur DI d'ASP.NET Core pour une séparation propre des responsabilités. Créez un middleware QR dédié qui intercepte des routes spécifiques et retourne des images QR. Utilisez IMemoryCache ou IDistributedCache (Redis) pour mettre en cache les codes QR générés par hash de contenu, évitant la génération redondante. Dans les API minimales (.NET 7+), retournez Results.Bytes(pngData, "image/png") pour des endpoints QR légers.
MAUI et Applications Bureau Multiplateformes
.NET MAUI permet la génération de codes QR sur Windows, macOS, Android et iOS depuis une base de code unique. QRCoder fonctionne sur toutes les plateformes MAUI pour la génération locale. Créez un contrôle personnalisé QrCodeView qui encapsule la sortie SVG de QRCoder dans un WebView ou affiche le PNG dans un contrôle Image. Pour les applications WPF héritées, BitmapByteQRCode de QRCoder génère des tableaux d'octets convertibles directement en sources BitmapImage.
Azure Functions et Déploiement Serverless
Déployez la génération QR en Azure Functions pour un auto-scaling et une tarification à l'exécution. Utilisez des fonctions déclenchées par HTTP qui acceptent les paramètres QR et retournent des réponses PNG. Pour les scénarios par lots, utilisez des fonctions déclenchées par file d'attente qui traitent les demandes de génération QR depuis Azure Service Bus. L'empreinte légère de QRCoder assure des démarrages à froid inférieurs à 500ms. Combinez avec Azure CDN pour mettre en cache les codes QR fréquemment demandés en périphérie.
Questions Fréquemment Posées
Questions courantes sur la génération de codes QR avec C#.
Commencez à générer des codes QR avec C#
Utilisez notre générateur gratuit ou intégrez l'API dans vos applications .NET.