`

ASP.NET中让图片以二进制的形式存储在数据库中

    博客分类:
  • .NET
阅读更多

http://www.niunan.org/show.php?id=276

 

生成规定大小的图片(缩略图生成)

 

http://niunan.org/show.php?id=272

using System;
using System.Collections;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Data.SqlClient;
using System.IO;
using System.Drawing;
using System.Web.Services.Protocols;
using System.Xml.Linq;
using System.Web.SessionState;   //一般处理程序不能用session解决办法(1)
namespace Picture  (要改的地方1)
{
    /// <summary>
    /// $codebehindclassname$ 的摘要说明
    /// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    public class Handler1(要改的地方2):IHttpHandler, IReadOnlySessionState   //一般处理程序不能用session解决办法(2)
    {

        public void ProcessRequest(HttpContext context)
        {
            MemoryStream stream = new MemoryStream();
            SqlConnection conn = new
            SqlConnection(@"Data Source=.\SQLEXPRESS;Initial Catalog=picture;Integrated Security=True");
            conn.Open();
            string sql = "select   [content]   from   picture where ID=@id";
            SqlCommand cmd = new SqlCommand(sql, conn);
            string id = context.Session["picid"].ToString();  //一般处理程序不能用session解决办法(3)
            SqlParameter[] parmas = new SqlParameter[] { new SqlParameter("@id", id) };
            cmd.Parameters.AddRange(parmas);
            SqlDataReader reader = cmd.ExecuteReader();
            DataTable dt = new DataTable();
            dt.Load(reader);
            byte[] pic = (byte[])dt.Rows[0]["Content"];
            stream.Write(pic, 0, pic.Length);
            Bitmap bitmap = new Bitmap(stream);
            context.Response.ContentType = "image/jpeg";
            bitmap.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
            conn.Close();
            stream.Close();
        }

        public bool IsReusable
        {
            get
            {
                return false;
            }
        }
    }
}

 

 

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Data.SqlClient;
using System.IO;
using System.Drawing;

namespace Picture
{
    public partial class _Default : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            int len = FileUpload1.PostedFile.ContentLength;  //获得图片的大小
            byte[] pic = new byte[len];  //创建一个与图片大小一致的二进制数组
            FileUpload1.PostedFile.InputStream.Read(pic, 0, len);  //把图片读到二进制数组中
            SqlConnection conn = new SqlConnection("Data Source=.\\SQLEXPRESS;Initial Catalog=picture;Integrated Security=True");
            conn.Open();
            string sql = "insert into picture ([Name],[Content]) values (@name,@content)";
            SqlCommand cmd = new SqlCommand(sql,conn);
            SqlParameter[] parmas = new SqlParameter[] { new SqlParameter("@name", TextBox1.Text), new SqlParameter("@content", pic) };
            cmd.Parameters.AddRange(parmas);
            int res = cmd.ExecuteNonQuery();
            if (res!=0)
            {
                Label1.Text = "上传成功";
                TextBox1.Text = "";
            }
            conn.Close();
        }

        protected void Button2_Click(object sender, EventArgs e)
        {
            Image1.ImageUrl = "Handler1.ashx?t=" + DateTime.Now.Ticks;
            string id = TextBox2.Text.Trim();
            Session["picid"] = id;
        }
    }
}

 

分享到:
评论

相关推荐

    ASP.NET实现图片以二进制的形式存入数据库

    本文以实例形式讲述了ASP.NET实现图片以二进制的形式存入数据库的方法。过去我们都是直接在数据库中存入图片文件名的,还没有试过存储整张图片到数据库中,经过一番资料查询与测试,整理出了如下的功能代码: 1.建立...

    asp.net实现从数据库中下载以二进制存储的图片

    asp.net(C#)实现从sqlserver数据库中下载以二进制存储的图片

    Asp.net把图片存入数据库和读取图片的方法

    网上关于ASP.NET上传图片到数据库的资料非常多,常用的如下:存储图片类型数据有以下几种方式:1.将图片转换为二进制数组(byte[]) 代码如下:byte[] fileData = this.FileUpload1.FileBytes; 2. 根据路径将文件转换...

    ASP.NET图片以二进制上传数据库,并从数据库中显示

    用ASP.NET实现图片存储到数据库,并从数据库中显示所存储的图片。

    如何将图片转换成二进制存储

    存储图片:以二进制的形式存储图片时,要把数据库中的字段设置为Image数据类型(SQL Server),存储的数据是Byte[]. 1.参数是图片路径:返回Byte[]类型: public byte[] GetPictureData(string imagepath) { /**/////...

    aspnet(C#)实现从sqlserver数据库中下载以二进制存储的图片

    aspnet(C#)实现从sqlserver数据库中下载以二进制存储的图片 京华志&精华志出品 分享资源 C# ASP.NET SQL DBA 源码

    ASP.NET使用fileupload控件上传图片

    ASP.NET使用fileupload控件上传图片到文件夹并以二进制存储于数据库中

    图片上传(以二进制存储)

    使用Web模式将图片以二进制存储到数据库并读取出来

    图片存储到数据库保存二进制文件

    asp.net 将图片存储到数据库 读取数据库二进制文件

    asp.net图片存取技术实例

    1、将上传图片名称存储到数据库中 2、将图片以二进制格式存储到数据库中 3、读取数据库中上传图片名称并显示图片 4、读取并显示数据库中以二进制方式存储图片 附加数据库直接运行

    用ASP.NET实现对Image类型数据的存取

    通过对ADO.NET技术特点的简要介绍,提出了对数据库中Image...该实例为数据库中多种二进制大对象类型的数据,包括图片、声音、视频及各种Office文档等进行存储与显示提供了一种可行的有效方法,并且给出部分程序源代码

    用asp.net上传图片资源

    将图片转换为二进制数据流存储到数据库。从数据库中读取图片通过将二进制转换为图片类型显示到页面中

    asp.net知识库

    使用.ashx文件处理IHttpHandler实现发送文本及二进制数据的方法 制作一个简单的多页Tab功能 一完美的关于请求的目录不存在而需要url重写的解决方案! 在C#中实现MSN消息框的功能 XmlHttp实现无刷新三联动ListBox 鼠标...

    asp.net上传图片保存到数据库的代码

    数据库:保存图片的数据格式 图象二进制数据储存字段前台: 代码如下: &lt;&#37;@ Page Language=”C#” AutoEventWireup=”true” CodeBehind=”UploadWork.aspx.cs” Inherits=”meishuguan.UploadWork” %&gt; &lt;!...

    ASP.NET开发实战1200例(第Ⅰ卷)第二十章

    实例533 读取并显示数据库中以二进制形式 存储的头像 809 实例534 解决同名文件覆盖问题实现上传图片 统一命名 810 实例535 开源节流——使用缓存区输出图像 812 20.4 图片大小与特效控制(应用AJAX 技术) 813 实例...

    asp.net技术内幕(1)

    第一部分 使用ASP.NET Web表单 &lt;br&gt;第1章 建立ASP.NET页面 &lt;br&gt;1.1 ASP.NET和.NET框架 1.1.1 .NET框架类库 1.1.2 理解名称空间 1.1.3 标准的ASP.NET名称空间 1.1.4 与.NET框架兼容的语言 ...

    asp.net MD5加密

    很好用的一个MD5 示例 在数据库存储的显示的是二进制形式

    一个漂亮的fileupload控件

    fileupload控件,在网上找的,源代码,可以直接打开,感觉挺漂亮的,大家可以一看,或许有点帮助

    ASP.NET4高级程序设计第4版 带目录PDF 分卷压缩包 part1

    ASP.NET 4高级程序设计(第4版)》【原版书为:Pro ASP.NET 4 in C# 2010】是ASP.NET领域的鸿篇巨制,全面讲解了ASP.NET4的各种特性及其背后的工作原理,并给出了许多针对如何构建复杂、可扩展的网站从实践中得出的...

Global site tag (gtag.js) - Google Analytics