You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

.NET 6生成二维码报错:'QRCode'未包含'GetGraphic'定义

解决.NET 6中QRCode.GetGraphic方法不存在的问题

错误原因分析

  1. QRCode实例初始化错误:你用无参构造创建QRCode实例后,调用Equals(qrCodeData)是做相等比较,而非将二维码数据关联到实例上,导致实例未正确初始化,自然找不到GetGraphic方法。
  2. 可能缺少依赖或命名空间:如果未安装正确的ZXing.Net包,或者没引入对应命名空间,编译器也会报找不到方法的错误。

修正步骤

1. 确认安装ZXing.Net NuGet包

在.NET 6项目中,通过NuGet包管理器安装ZXing.Net,或执行以下命令:

Install-Package ZXing.Net

2. 修正代码逻辑

替换原有错误代码,正确关联二维码数据并调用方法:

using ZXing;
using ZXing.QrCode;

QRCodeGenerator qrCodeGenerator = new();
// 用字符串插值优化拼接,更简洁易读
string data = $"Name : {employeeSalaryGetDetails.Name}\nDOB : {employeeSalaryGetDetails.DayofBirth}\nEmail Address : {employeeSalaryGetDetails.EmailId}";
QRCodeData qrCodeData = qrCodeGenerator.CreateQrCode(data, QRCodeGenerator.ECCLevel.Q);
// 实例化QRCode时直接传入QRCodeData,完成数据关联
QRCode qrCoder = new QRCode(qrCodeData);
// 调用GetGraphic生成二维码图片,参数为像素尺寸
Image qrCodeImage = qrCoder.GetGraphic(20);

var bytes = ImageToByteArray(qrCodeImage);
// 修正MIME类型为标准的image/png
return File(bytes, "image/png");

3. 检查命名空间

确保代码文件顶部引入了ZXing和ZXing.QrCode,否则编译器无法识别相关类和方法。

内容的提问来源于stack exchange,提问作者dotnetdeveloper

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 11:01:18