/// <summary>
/// 生成二维码
/// </summary>
[DisplayName("生成二维码")]
public async Task<string> GetQRCode(string link)
{
//生成weiyiID
string guid = Guid.NewGuid().ToString().Replace("-", "") + ".png"; //图片名称
//文本生成二维码图片数据
QRCodeData qrCodeData = qrGenerator.CreateQrCode(link, QRCodeGenerator.ECCLevel.Q);
var qrcode = new BitmapByteQRCode(qrCodeData);
//生成64位编码格式的图片
var bitmap = qrcode.GetGraphic(10);
//创建路径
//string path = Environment.GetFolderPath(Environment.SpecialFolder.MyPictures) + "/" + guid;
//网站根目录地址
if (!Directory.Exists(App.WebHostEnvironment.WebRootPath + "/Upload/Img"))
{
//创建此文件夹
Directory.CreateDirectory(App.WebHostEnvironment.WebRootPath + "/Upload/Img");
}
string path = Path.Combine(App.WebHostEnvironment.WebRootPath + "/Upload/Img/", guid);
//写入文件
FileStream fs = new FileStream(path, FileMode.Create);
fs.Write(bitmap);
fs.Close();
string retpath = Path.Combine(GetHost() + "/Upload/Img/", guid);
return await Task.FromResult(retpath);
}
/// <summary>
/// 获取Host
/// </summary>
private string GetHost()
{
var localhost = $"{_httpContextAccessor.HttpContext.Request.Scheme}://{_httpContextAccessor.HttpContext.Request.Host.Value}";
return localhost;
}
11-27
3570
10-30
808
“相关推荐”对你有帮助么?
-
非常没帮助
-
没帮助
-
一般
-
有帮助
-
非常有帮助
提交