简介:

二维码又称二维条码,常见的二维码为QR Code,QR全称Quick Response,是一个近几年来移动设备上超流行的一种编码方式,它比传统的Bar Code条形码能存更多的信息,也能表示更多的数据类型。

步骤说明:

第一步要做的就是添加对 ThoughtWorks.QRCode 的引用。添加引用步骤:右键引用——》管理 NuGet 程序包——》浏览中搜索 QRCode ——》安装 ThoughtWorks.QRCode 程序包

下文为Controller控制器的后端代码,输入所需展示的内容并返回一个base64的字符串用于前端内容展示...

 [HttpPost]
/// <summary>
/// 生成二维码
/// </summary>
/// <param name="qrCodeContent">要编码的内容</param>
/// <returns>返回二维码base64用于前端展示</returns>
public string QRCodeEncoderUtil(string qrCodeContent)
{
QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();
qrCodeEncoder.QRCodeScale = ;
qrCodeEncoder.QRCodeVersion = ;
Bitmap img = qrCodeEncoder.Encode(qrCodeContent, Encoding.UTF8);//指定utf-8编码, 支持中文
string strbaser64 = "";
try
{
using (MemoryStream ms = new MemoryStream())
{
img.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
byte[] arr = new byte[ms.Length];
ms.Position = ;
ms.Read(arr, , (int)ms.Length);
ms.Close();
strbaser64 = Convert.ToBase64String(arr);
}
return strbaser64;
}
catch (Exception)
{
throw new Exception("Something wrong during convert!");
}
}

Controller内容

下文为Web视图的前端代码,因只是一个功能示例,未对样式进行调整...

 <script src="~/Scripts/jquery-1.10.2.min.js"></script>

 <div>
<div><span>生成内容:</span><input placeholder="请输入需要生成的文字描述..." id="EwmText" /></div>
<button onclick="GetErWeiMa()">
生成二维码
</button>
<img id="ErWeiMaImg" style="width:120px;height:120px">
</div> <script>
function GetErWeiMa() {
$.post("/Index/QRCodeEncoderUtil?qrCodeContent=" + encodeURIComponent($("#EwmText").val()), function (data) {
if (data != "") {
$("#ErWeiMaImg").attr("src", "data:image/jgp;base64," + data)
}
else {
alert("生成失败");
}
})
}
</script>

View代码

如果您已经按照要求完成代码,则会出现下图效果,输入所需生成内容,前端会展示对应的二维码。注意input输入的内容需要encodeURIComponent,否则会截断特殊字符...

.Net MVC生成二维码并前端展示的更多相关文章

  1. asp.net mvc 生成二维码

    生成二维码,帮助类: using Gma.QrCodeNet.Encoding; using Gma.QrCodeNet.Encoding.Windows.Render; using System; ...

  2. jquery.qrcode.min.js生成二维码 通过前端实现二维码生成

    主体代码: <!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <tit ...

  3. jquery.qrcode.js生成二维码(前端生成二维码)

    官网地址:http://jeromeetienne.github.io/jquery-qrcode/ 第一步引入插件: <script type='text/javascript' src='h ...

  4. SpringMVC将url生成二维码图片直接展示在页面上

    利用google的开源包zxing生成二维码 第一步:maven项目的zxing依赖 <!-- google zxing 生成二维码 --> <dependency> < ...

  5. C# 生成二维码 QRCoder

    最近项目上有个需求,需要将某个文件的下载地址生成二维码,并展示到网页上. 目前网上生成二维码的方法有好几种,本文将介绍[QRCoder]生成二维码的方式 一.首先通过VS中的[NUGET]下载并引用Q ...

  6. 利用QrCode.Net生成二维码 asp.net mvc c#

    利用QrCode.Net生成二维码 asp.net mvc c# 里面介绍了.net的方式及js的方式,还不错. 里面用到的qrcode.net的类库下载地址:https://qrcodenet.co ...

  7. 【QRcode二维码】:使用JS前端插件QRcode.js生成二维码

    1.先简单说一下jquery-qrcode,这个开源的三方库(可以从https://github.com/jeromeetienne/jquery-qrcode 获取), qrcode.js 是实现二 ...

  8. 前端生成二维码 - Javascript生成二维码(QR)

    前段时间项目中需要动态的生成二维码,经过评估,前后端生成都可以.但后端生成会有两个问题: 没有找到正规发布出来的后端开源库. 二维码图片,会随着商品的增加而不断变多. 基于以上两个问题,决定在前端生成 ...

  9. C#MVC用ZXing.Net生成二维码/条形码

    开篇:zxing.net是.net平台下编解条形码和二维码的工具. 首先创建新项目 选择MVC模板  添加一个控制器  在项目引用中的引用ZXing 进行联网下载 控制器需要引用 后台控制器   pu ...

随机推荐

  1. UDS的使用

    我们通过对导热微分方程式的求解,并与Fluent自己的求解结果进行对比,介绍一下Fluent当中UDS(自定义标量)的具体使用方法. 首先Fluent当中的UDS主要针对下面这样形式的方程: 其中: ...

  2. 一条简单的 SQL 执行超过 1000ms,纳尼?

    阅读本文大概需要 2.8 分钟. MySQL 对我说 “Too young, too naive!" ▌大概过程 在测试环境 Docker 容器中,在跨进程调用服务的时候,A 应用通过 Du ...

  3. css选择指定元素

    .butSpan:){ margin-left: 10px; } nth-child(n+2)括号内可以是公式 可是是数字

  4. ReentrantLock源码学习总结 (二)

    [^]: 以下源码分析基于JDK1.8 ReentrantLock 示例 private ReentrantLock lock = new ReentrantLock(true); public vo ...

  5. element UI中的select选择器的change方法需要传递多个值

    如果直接调用change事件,不传任何参数,则可以获取到当前选中的值(因为默认会将event参数传递过去) 场景: 你需要将select选择器 ”选中的当前元素“ 和 ”其他你需要的值“ 一起传递过去 ...

  6. How to Install Ruby on CentOS/RHEL 7/6

    How to Install Ruby on CentOS/RHEL 7/6 . Ruby is a dynamic, object-oriented programming language foc ...

  7. win 程序开机自启动设置

    若程序设置了开机自启动,但是仍没有效果,可能是被什么拦截了,或者什么原因.导致开机并没有自启动,那么如何解决呢? 解决方法:将软件的快捷方式 或 单个软件 直接拷贝到 如下目录,即可强制实现开机自启动 ...

  8. 执行redis命令redis-trib.rb查看集群信息报错cannot load such file -- redis (LoadError)

    问题描述: 在执行redis-trib.rb命令查看集群状态的时候,报错: [aiprd@hadoop1 ~]$ redis-trib.rb check Traceback (most recent ...

  9. 解决StrToDateTime()不是有效日期类型的问题

    方法一: function GetDateFormat():string; var SysFrset: TFormatSettings; begin Result:=''; GetLocaleForm ...

  10. 动手制作 java版本切换 多版本JDK安装 windows JDK版本 切换

    [参考]windows下JDK版本之间的切换 1.下载各版本安装包,指定安装位置顺序安装 2.删除注册表,文件和环境变量 文件: C:\Windows\System32  下java相关文件如 jav ...