Thứ ba, ngày 21 tháng 11 năm 2017

Hiển thị dữ liệu dạng bit trong DataList ASP.Net C#

Ngày đăng: 10/5/2011, 23:18:24PM | Lượt xem: 5,506
Hot!

Vấn đề đặt ra là bạn có một bảng trong cơ sở dữ liệu Orders chứa các hóa đơn giao nhận hàng hóa, trong đó có một cột Active dạng bit (true/false). Bạn muốn hiển thị danh sách các hóa đơn, với những hóa đơn đã thanh toán (Active = true) thì hiển thị hình ảnh đã thanh toán, ngược lại nếu là false thì chưa thanh toán.

Để giải quyết vấn đề này có nhiều cách, nhưng trong giới hạn của bài viết này, tôi sẽ giới thiệu với các bạn cách mà tôi thường sử dụng.

 

Bước 1: Ở trang codebehind (code C#) bạn viết hàm như sau

 

public string ImageToShow(bool Active)

    {

        if (Active == true)

            return "/active.gif";

        else

            return "/notactive.gif";

    }

 

Mục đính của hàm này là nhận giá trị từ trường Active bạn lưu trong CSDL có dạng bit (true/false) và tùy theo giá trị đó mà trả ra 2 đường dẫn ảnh khác nhau. Bạn chú ý để hàm này ở dạng public nhé, vì sau đó bạn cần phải dùng để gọi nó từ bên code aspx nữa.

 

Bước 2: Tại trang aspx có chứa DataList, các bạn làm như bình thường với việc lấy tên sản phẩm (hoặc hóa đơn như ví dụ).
Riêng đối với control img để hiển thị trạng thái hóa đơn đã thanh toán hay chưa thì các bạn sẽ gán đường dẫn bằng giá trị trả ra tại hàm ImageToShow
Code của đoạn này như sau:

 

<asp:DataList ID="DataList1" runat="server">

            <ItemTemplate>

                Hóa đơn: <%#Eval("OrderID") %><br />

                Tình trạng: <img src ='<%#ImageToShow(Convert.ToBoolean(DataBinder.Eval(Container.DataItem, "Active")))%>'/>

            </ItemTemplate>

</asp:DataList>

 

Trong đó Active (tôi bôi màu đỏ) là trường trong CSDL có dạng bit nhé.

Hy vọng bài viết nhỏ, có thể giải đáp phần nào thắc mắc của các bạn!

 Chia sẻ qua: 
Hot!
Ý kiến bạn đọc

These items will be permanently deleted and cannot be recovered. Are you sure?

Gallery

image

Maecenas viverra rutrum pulvinar

Maecenas viverra rutrum pulvinar! Aenean vehicula nulla sit amet metus aliquam et malesuada risus aliquet. Vestibulum rhoncus, dolor sit amet venenatis porta, metus purus sagittis nisl, sodales volutpat elit lorem…

Read more

Text Links

Thiết kế logo chuyên nghiệp Insky
DAFABET
W88 w88b.com/dang-ky-tai-khoan-w88
W88
ca do bong da online
Copyright © 2011 - 2012 vietshare.vn by phamkhuong102@gmail.com doanhkisi2315@gmail.com. All rights reserved.