当前位置:  编程技术>.net/c#/asp.net

c# UpdatePanel无刷新上传图片 asp.net无刷新上传

    来源: 互联网  发布时间:2014-08-30

    本文导语:  c# asp.net借助UpdatePanel实现无刷新上传图片的代码,分为三个部分,前台、后台,一般性文件,层次清晰。 有需要的朋友可以参考下。 1)前台代码   代码示例: 实现无刷新上传图片 2)、后...

c# asp.net借助UpdatePanel实现无刷新上传图片的代码,分为三个部分,前台、后台,一般性文件,层次清晰。
有需要的朋友可以参考下。

1)前台代码
 

代码示例:




实现无刷新上传图片



















2)、后台代码
 

代码示例:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.IO;
using System.Data.SqlClient;
using System.Data;
public partial class _Default:baseClass
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void Button1_Click(object sender, EventArgs e)
{
HttpPostedFile upFile = File1.PostedFile;
int iFileLength = upFile.ContentLength;
try
{
if (iFileLength == 0)
{
MessageBox("请选择要上传的文件!");
}
else
{
Byte[] FileByteArray = new Byte[iFileLength];
Stream StreamObject = upFile.InputStream;
StreamObject.Read(FileByteArray, 0, iFileLength);
SqlConnection conn = new SqlConnection("server=.;database=Test;uid=sa;pwd=1234;");
ExecuteBySQLNonQuery("delete from imageTable");
SqlCommand cmd = new SqlCommand("insert into [imageTable] values(@image)", conn);
cmd.Parameters.Add("@Image", SqlDbType.Binary, iFileLength).Value = FileByteArray;
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
MessageBox("成功上传!");
}
image1.ImageUrl = "displayempphoto.ashx";
}
catch (Exception ex)
{
MessageBox(ex.Message);
}
}
}

3)、一般处理文件displayempphoto.ashx
 

代码示例:

using System;
using System.Web;
using System.Data.SqlClient;
using System.Web.Configuration;
using System.Data;
public class DisplayEmpPhoto : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
using (SqlConnection cn = new SqlConnection(WebConfigurationManager.ConnectionStrings["CONNECTIONSQL"].ConnectionString))
{
SqlCommand SQLCmd = cn.CreateCommand();
SQLCmd.CommandText = "SELECT imagedata FROM imageTable";
cn.Open();
using (SqlDataReader dr = SQLCmd.ExecuteReader(CommandBehavior.SingleRow))
{
if (dr.Read())
{
// 改变 HTTP 文件头的输出格式,让浏览器理解所输出文件格式为 JPEG。
context.Response.ContentType = "Image/JPEG";
context.Response.Clear();
context.Response.BufferOutput = true;
context.Response.BinaryWrite(dr.GetSqlBytes(0).Value);
}
}
}
}
public bool IsReusable
{
get
{
return false;
}
}
}

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • updatepanel用法之triggers使用示例
  • 如何在UpdatePanel中调用JS客户端脚本


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3