Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

When I am trying to generate QR code from web api in c# using QRCoder Package I cannot find QRCode in QRCode namespace in .NET 6

Tags:

c#

.net

qr-code

When I am trying to generate a QR code from a web API in C# using QRCoder Package I cannot find QRCode in QRCode namespace in .NET 6

try
{
    //var res = awfait _qrGaneraterRepository.QRCodeGenerator(employeeSalaryGetId);

    QRCodeGenerator qrCodeGenerator = new QRCodeGenerator();
    QRCodeData qrCodeData = qrCodeGenerator.CreateQrCode(EmployeeSalaryGetId, QRCodeGenerator.ECCLevel.Q);
    QRCode qrCoder = new QRCode(qrCodeData);
    //using (QRCode qrCode = new QRCode(qrCodeData))
    //{
    //    Bitmap qrCodeImage = qrCode.GetGraphic(20);
    //}

    Image rqCodeImage = qrCoder.GetGraphic(20);

    var bytes = ImageToByteArray(rqCodeImage);
    return File(bytes, "image/tmp");

    //return res.Status ? StatusCode(StatusCodes.Status201Created, res) : StatusCode(StatusCodes.Status409Conflict, res);
}
like image 211
dotnetdeveloper Avatar asked Sep 01 '25 10:09

dotnetdeveloper


2 Answers

Just downgrade to version 1.4.1 I had the same issue when using 1.4.3 This fixed the issue for me.

like image 173
raf Avatar answered Sep 04 '25 01:09

raf


Thanks to: badrshs https://github.com/codebude/QRCoder/issues/577#issuecomment-2355421626

[SuppressMessage("Interoperability", "CA1416:Validate platform compatibility")]
private Bitmap GenerateQrCode(string text, int size)
{
    using var qrGenerator = new QRCodeGenerator();
    using QRCodeData qrCodeData = qrGenerator.CreateQrCode(text, QRCodeGenerator.ECCLevel.Q);
    using var qrCode = new PngByteQRCode(qrCodeData);
    byte[] qrCodeAsPngByteArr = qrCode.GetGraphic(size);

    using var ms = new MemoryStream(qrCodeAsPngByteArr);
    return new Bitmap(ms);
}
like image 25
GrasM4n Avatar answered Sep 04 '25 00:09

GrasM4n