MVC4:导出qrcode图像到Excel表单

我想用我的表格中的qr-code图像导出excel表格。 qrcode保存与序列号,我生成与谷歌apis。 我在控制器中返回MvcHtmlString并在我的视图中使用它,如@Html.QRCode(item.SerialNumber, 80, 0) ,它在我的视图中工作良好。

我的控制器

  public static MvcHtmlString QRCode(this HtmlHelper htmlHelper, string data, int size = 80, int margin = 4, QRCodeErrorCorrectionLevel errorCorrectionLevel = QRCodeErrorCorrectionLevel.Low, object htmlAttributes = null) { if (data == null) throw new ArgumentNullException("data"); if (size < 1) throw new ArgumentOutOfRangeException("size", size, "Must be greater than zero."); if (margin < 0) throw new ArgumentOutOfRangeException("margin", margin, "Must be greater than or equal to zero."); if (!Enum.IsDefined(typeof(QRCodeErrorCorrectionLevel), errorCorrectionLevel)) throw new InvalidEnumArgumentException("errorCorrectionLevel", (int)errorCorrectionLevel, typeof(QRCodeErrorCorrectionLevel)); var url = string.Format("http://chart.apis.google.com/chart?cht=qr&chld={2}|{3}&chs={0}x{0}&chl={1}", size, HttpUtility.UrlEncode(data), errorCorrectionLevel.ToString()[0], margin); var tag = new TagBuilder("img"); if (htmlAttributes != null) tag.MergeAttributes(new RouteValueDictionary(htmlAttributes)); tag.Attributes.Add("src", url); tag.Attributes.Add("width", size.ToString()); tag.Attributes.Add("height", size.ToString()); return new MvcHtmlString(tag.ToString(TagRenderMode.SelfClosing)); } 

要导出Excel表格我做以下几点:

  1. 创build一个网格
  2. 给它所需数据的数据源。

我给网格视图的qrcode数据是

data.QRcode = atm.SerialNumber;

它实际上得到了一串qrcode如何获得其代码的qrcode图像,就像我认为我使用的那样

@Html.QRCode(item.SerialNumber, 80, 0)

注:我需要任何解决scheme,可以获得qrcode图像和其他外部数据打印它。

更新:我到达了图像的来源,然后如果任何解决scheme,如何根据图像的来源在Excel表单中显示图像。 详细步骤:1 – 获取图像的链接像谷歌apis

 System.Web.UI.WebControls.Image image = new System.Web.UI.WebControls.Image(); image.ImageUrl = url; image.Width = 80; image.Height = 80; atm2.QRcode = image; 

但是这个列不会出现在导出的Excel表格中

谢谢你的帮助 。