C#MVC使用二进制流显示图片

关于显示图片的最好方法当然是img 的src直接指向地址,简单实用。但是有时候也会使用到使用图片流显示图片的方法。实现也比较简单(在C# mvc中,java的不了解)。具体如下:

1.前台cshtml部分

添加img 标签,其地址指向后台的返回图片流的方法。

<img src="@Url.Action("ShowImage","ShowImgFromImgByte",new { id="5"})" /><span id="__kindeditor_bookmark_start_14__"></span>

@Url.Action方法有三个参数,方法名、Control名称、方法参数(参数类型不用写)

2.后台control部分

/// <summary>
/// 本地图片
 /// </summary>
/// <returns></returns>
public FileResult ShowImage(string id)
{
    string _path = string.Concat(System.AppDomain.CurrentDomain.BaseDirectory, "Content\\images\\longmao.png");
    FileStream fs = new FileStream(_path, FileMode.Open);
    byte[] byData = new byte[fs.Length];
    fs.Read(byData, 0, byData.Length);
    fs.Close();
    return File(byData, "image/jpg");
}

其中返加值类型为FileResult,不是我们常见的ActionResult,同样的,return时也是return File().关于mvc的不同返回类型,大家可以上网了解下。

特别说明,这种图片的展示方法不推荐,使用起来相对比较麻烦。

时间: 2024-10-11 14:40:41

C#MVC使用二进制流显示图片的相关文章

java 二进制流转换为图片

import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import sun.misc.BASE64Decoder; public String getPicFromStreams() {         String str ;//存放二进制的流                 BASE64Decoder decoder=new BASE64Decoder();           by

MVC使用Flash来显示图片

Insus.NET实现一些网站模版,如用户能动态变更网站的头,中间或是脚的部位,就是不太确定用户上传的是图片,还是Flash.因此想到一个较好的解决方法,就是使用Flash的组件去显示来源的图片或是.swf文件.这样的话,两者均能正常显示. 现在全面从asp.net转向asp.net mvc了,想起日后的日子,MVC同样需要实现相同的功能.因此此篇就是因此而演练的. 首先去https://code.google.com/p/swfobject/下载 解压之后,把swfobject.js放至应用程

如何显示二进制流的图片(利用img控件)

之前在http://www.cnblogs.com/JsonZhangAA/p/5568575.html博文中是利用的image控件来显示的二进制流图片,我现在想的是能 通过普通的<img id="xx" src="xx"/>这种形式来显示我的二进制流图片吗?必须可以(?▽?),就是写法稍微麻烦了一点,img要写成这个样子: ,对你看的没错,它的地址指向了一个aspx页面,这个页面有个奇特之处, 就是我们新建后,不用写任何前台代码,WebForm1前后台

前端将图片二进制流显示在html端

工作中碰到的问题,在处理接口返回的验证码图片时,由于返回的是encode编码代码,在js端获取到数据之后,通过函数encodeURI()来进行解码,之后可以通过在src中设置来实现图片显示: <img src="data:image/jpeg;base64,iVBORw0KGgoAAAANSUhEUgAAAHgAAAAoCAIAAAC6iKlyAAAFL0lEQVR42u3Zb2hXVRgH8EsbGoNe%0D%0ABJWmKeGcL1TajKGbmlGjjAWDRstQ7IWoc%2B

IO流显示图片,比如验证码

/**      * 获取预览活动二维码      * @author 向龙飞      * @date 2015-10-9      * @param m      * @param request      * @return      * @throws IOException       */     @RequestMapping({"/lookevent.htm"})     public void lookevent(Map<String, Object> m

使用C#向Sql Sever中存取网络图片和本地图片(二进制流的形式)

先是做普通的,存储我们本地的图片,将它转化为二进制流存储到数据库对应的表中. 代码如下: string path = "../../A.jpg"; FileStream fs = new FileStream(path, FileMode.Open); int streamLength = (int)fs.Length; //获取文件流的长度. byte[] image = new byte[streamLength]; //声明字节数组,用于保存图片文件 fs.Read(image,

【转载】C#.NET WebApi返回各种类型(图片/json数据/字符串),.net图片转二进制流或byte

C#.NET WebApi返回各种类型(图片/json数据/字符串),.net图片转二进制流或byte 转载:http://www.itdos.com/Mvc/20150302/0741255.html using System.IO; /// <summary> /// WebApi返回图片 /// </summary> public HttpResponseMessage GetQrCode() { var imgPath = @"D:\ITdosCom\Images

用NOPI将图片二进制流导出到Excel

这儿采取的是将图片的二进制流导出到Excel,直接上代码: /// <summary> /// DataTable导出到Excel的MemoryStream /// </summary> /// <param name="dtSource">源DataTable</param> /// <param name="strHeaderText">表头文本</param> /// <param

ajax 请求二进制流 图片 文件 XMLHttpRequest 请求并处理二进制流数据 之最佳实践

写在前面 :从提出需求到完美的解决问题,实现过程是曲折的. 需求:在前(web client)后(Restful Service)端完全解耦的模式框架下,webclient需要请求 Service 返回的图片文件(二进制流),并在client端显示. 第一步思考:拿到此需求, 基于程序员的狂妄心里,思考到显示图片而已,jquery ajax直接get请求 将返回data 赋值给img标签的src属性即可嘛,so easy~ 不知天高地后的小子开始码代码,经过几分钟给出了以下的代码,并自信满满的准