Share Code Web - Chia sẻ niềm đam mê bất tận > Lập trình > ASP/ASP.Net > Xem trước ảnh được upload trước khi lưu vào database với asp.net
Xem trước ảnh được upload trước khi lưu vào database với asp.net
Nguyễn Trung Hiếu
Share Code Web Company 2012

Xem trước ảnh được upload trước khi lưu vào database với asp.net

Hey, xin chào các bạn, hôm nay mình giới thiệu đến các bạn một chủ đề cũng không mới trong asp.net nhưng có lẽ không phải ai biết với thủ thuật này. Bài viết này sẽ hướng dẫn các bạn thực hiện việc xem trước ảnh được upload lên server mà không cần lưu vào database.

1. Đầu tiên các bạn tạo 1 webpage. Sau đó add 3 control là FileUpload, ButtonImage Control
ASPX Code:
[C#]

[/C#]
2. Bây giờ tạo sự kiện click button “btnPhotopreview
[C#]

[/C#]
3. Tiếp theo bạn add một class handler để thực hiện việc show ảnh. Chúng ta sẽ sử dụng một biến session FileBytes của control upload
preview image before save database
Sau khi add, code trong file ashx nó có dạng như sau:
[C#]
<%@ WebHandler Language="C#" Class="ImageHandler" %>

using System;
using System.Web;

public class ImageHandler : IHttpHandler {

public void ProcessRequest (HttpContext context) {
context.Response.ContentType = “text/plain”;
context.Response.Write(“Hello World”);
}

public bool IsReusable {
get {
return false;
}
}
}
[/C#]

Chúng ta sửa lại như sau
[C#]
<%@ WebHandler Language="C#" Class="ImageHandler" %>

using System;
using System.Web;

public class ImageHandler : IHttpHandler, System.Web.SessionState.IRequiresSessionState
{

public void ProcessRequest (HttpContext context) {
//Checking whether the imagebytes session variable have anything else not doing anything

if ((context.Session[“ImageBytes”]) != null)
{
byte[] image = (byte[])(context.Session[“ImageBytes”]);
context.Response.ContentType = “image/JPEG”;
context.Response.BinaryWrite(image);
}
}

public bool IsReusable {
get {
return false;
}
}
}
[/C#]
4. Cuối cùng, trong sự kiện click button bên trên, bạn gọi biến session ra, và cho Image Control hiển thị giá trị trong session này ra
[C#]
protected void btnPreview_Click(object sender, EventArgs e)
{
Session[“ImageBytes”] = PhotoUpload.FileBytes;
ImagePreview.ImageUrl = “~/ImageHandler.ashx”;
}
[/C#]
Cuối cùng là build và chạy thử
preview image before save database in asp.net
Bạn có thể dowload mã nguồn của bài viết bên dưới đây để học hỏi nhé! Chúc bạn thành công.

Download Code

Related Posts

Tác giả: Nguyễn Trung Hiếu

Một blogger ... cùi bắp! Đơn giản: tôi muốn ghi lại những gì xảy ra xung quanh, cả công việc lẫn cuộc sống và chia sẻ với các bạn đọc. Nếu bạn cảm thấy bài viết có nhiều điểm không chính xác, hãy comment và chia sẻ để tôi còn được học hỏi từ những góp ý của bạn. Email: hieunt.dcn@gmail.com

Leave a comment

Bạn phải Đăng nhập để tham gia bình luận.

https://sharecodeweb.net/?s={search_term_string}

Blog Stats

  • 5.754 hits
%d bloggers like this: