Thêm ShoppingCart (xe đẩy mua hàng)

Một phần của tài liệu Phần 3: Lập trình Cơ sở dữ liệu nâng cao với ADO.NET_Chương 14 (Trang 66 - 68)

Trong mục này, bạn sẽ thêm một DataGrid để lưu trữ Shopping Cart (xe đẩy mua hàng). Kéo một điều khiển DataGrid từ Toolbox vào bên trái của DataGrid1 trên form của bạn. Đặt ID của DataGrid mới này là

ShoppingCart, như trong Hình 15.28.

Hình 15.28: ShoppingCart DataGrid

Ghi nhớ: Bạn có lẽ đã phải đóng tất cả cửa sổ trừ form designer (cửa sổ thiết kế form) như thế bạn sẽ có đủ không gian màn hình để thêm DataGrid mới vào form của bạn.

Thêm mã vào file WebForm1.aspx.cs.

Công việc kế tiếp của bạn là thêm mã bổ sung vào file WebForm1.aspx.cs để hỗ trợ shopping cart (xe đẩy mua hàng). Như được đề cập trước đó, hoặc bạn có thể theo những bước trình bày trong mục này hay bạn có thể thay thế mã đằng sau form của bạn bằng mã trong file WebForm1.aspx.cs được chứa trong thư mục VS .NET

Projects\DataGridWebApplication . Bạn thay thế mã trong form của bạn bằng cách chọn và xóa mã hiện hữu trong form và dán mã trong file WebForm1.aspx.cs vào.

Thực hiện những bước sau đây nếu bạn muốn tự tay sửa đổi mã:

1. Chọn View ¾ Code, hay nhấn F7 trên bàn phím để xem mã. Thêm một đối tượng DataTable đặt tên Cart và một đối tượng DataView tên CartView vào lớp WebForm1, như trình bày trong mã dưới đây:

public class WebForm1 : System.Web.UI.Page {

protected DataTable Cart; protected DataView CartView;

Đối tượng Cart của bạn được dùng để lưu trữ shopping cart (xe đẩy mua hàng) và sẽ được cư trú với những sản phẩm được chọn sử dụng nút Buy. Đối tượng CartView của bạn được dùng để xem shopping cart ( xe đẩy mua hàng).

2. Tiếp theo, Gán phương thức Page_Load() tới mã sau đây; chú ý phương pháp này tạo ra một

Session (phiên họp):

private void Page_Load(object sender, System.EventArgs e) {

// Put user code to initialize the page here

// populate the Session object with the shopping cart if (Session["ShoppingCart"] == null)

{

Cart = new DataTable();

Cart.Columns.Add(new DataColumn("Product Name", typeof(string))); Cart.Columns.Add(new DataColumn("Unit Price", typeof(string))); Session["ShoppingCart"] = Cart;

} else {

Cart = (DataTable) Session["ShoppingCart"]; }

CartView = new DataView(Cart); ShoppingCart.DataSource = CartView; ShoppingCart.DataBind();

if (!this.IsPostBack) {

// populate dataSet11 with the rows from the Products DataTable sqlDataAdapter1.Fill(dataSet11, "Products");

this.DataBind(); }

}

3. Tiếp theo, bạn cần thêm phương thức AddToCart() sau đây tới lớp WebForm1 của bạn . Phương thức này được gọi khi người sử dụng nhấn nút Buy (Mua). Chú ý phương thức này tạo ra một đối tượng DataRow và cư trú nó với những đối tượng TableCell để lưu trữ tên sản phẩm và đơn giá trong DataTable Shopping-Cart mà đã thêm vào form bạn trước đó.

protected void AddToCart(Object sender, DataGridCommandEventArgs e) {

DataRow product = Cart.NewRow(); (adsbygoogle = window.adsbygoogle || []).push({});

// e.Item is the row of the table where the command is raised.

// For bound columns the value is stored in the Text property of TableCell TableCell productNameCell = e.Item.Cells[1];

TableCell unitPriceCell = e.Item.Cells[3]; string productName = productNameCell.Text; string unitPrice = unitPriceCell.Text;

if (((Button)e.CommandSource).CommandName == "AddToCart") { product[0] = productName; product[1] = unitPrice; Cart.Rows.Add(product); } ShoppingCart.DataBind(); }

4. Việc duy nhất còn lại là chạy form của bạn. Để làm điều này, chọn Debug ¾ Start Without Debugging, hay nhấn Ctrl+ F5 trên bàn phím .

Kích nút Buy cho những sản phẩm khác nhau trong lưới để thêm chúng vào xe đẩy mua hàng của bạn.

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

Tóm lược

HTML tạo ra những trang Web tĩnh với nội dung không thay đổi. Tuy nhiên,nếu bạn muốn thông tin động, thì bạn có thể sử dụng ASP.NET. Nó cho phép bạn tạo ra những trang Web với nội dung có thể thay đổi trong thời gian chạy, và để phát triển những ứng dụng mà được truy cập sử dụng một Web Browser (Trình duyệt mạng). Trong chương này, bạn đã thấy cách sử dụng Visual Studio .NET và ngôn ngữ lập trình C# để tạo một vài trình ứng dụng Web đơn giản ASP.NET . Chương này cho bạn một giới thiệu ngắn gọn về đề tài lớn ASP.NET. Về phạm vi đề tài kỹ lưỡng hơn , xem "Mastering ASP .NET with C# (Sybex, 2002)" của Russell Jones.

Có hai phần chính tới form ASP.NET : file .aspx, chứa mã HTML và ASP .NET , và file aspx.cs , chứa mã C# mà hỗ trợ form web. Bạn có thể xem mã C# này như một thứ chạy đằng sau form, và vì lý do này file .aspx.cs được biết như file sau mã. Bạn có thể xem mã ASP.NET chứa trong file HTML cho form của bạn bởi việc kích mối liên kết HTML ở đáy cửa sổ fom deginer . Bạn có thể xem file sau mã bởi chọn View > Code, hay bạn có thể nhấn F7 trên bàn phím.

Một DataGrid cho phép bạn truy cập những hàng trong một bảng cơ sở dữ liệu. Trong những mục sau đây, bạn sẽ học cách tạo ra trình ứng dụng web ASP .NET sử dụng một điều khiển DataGrid để truy cập những hàng trong một bảng cơ sở dữ liệu như thế nào. Bạn tùy biến DataGrid của bạn bằng cách - đầu tiên chọn điều khiển DataGrid và sau đó kích mối liên kết Property Builder (bộ xây dựng thuộc tính) ở đáy của cửa sổ những thuộc tính. Việc này hiển thị hộp thoại những thuộc tính cho DataGrid của bạn. hộp thoại những thuộc tính được chia vào trong năm vùng: General, Columns, Paging, Format, and Borders (Tổng quan, những cột, sự phân trang, định dạng, và những viền). Một DataList cung cấp cho bạn nhiều tính linh hoạt trong sự trình bày những giá trị cột hơn một DataGrid, Như khả năng thêm những đầu mục và những cuối vào dữ liệu.

Giao thức truyền tải siêu văn bản (HTTP) không bảo trì trạng thái giữa những trang cung cấp bởi máy chủ phục vụ Mạng của bạn trong thời gian mỗi vòng truyền tải. Điều này có nghĩa là bất kỳ thông tin nào bạn cung cấp trong một form sẽ bị bỏ quên khi bạn nhận một trang mới. Để Máy chủ phục vụ Mạng nhớ những gì bạn đã làm trong thời gian vòng truyền tải sau cùng , bạn có thể cất giữ thông tin trên Máy chủ phục vụ hay trên máy tính khách trên đó trình duyệt đang chạy. Việc lưu trữ thông tin trên máy khách có nghĩa là bạn không sử dụng bất kỳ tài nguyên nào trên máy chủ phục vụ để lưu trữ thông tin này và trình ứng dụng web của bạn có thể xử lý nhiều người sử dụng hơn. Việc lưu trữ thông tin trên máy chủ phục vụ cho bạn nhiều điều khiển của thông tin được cất giữ hơn, nhưng từ đó tiêu thụ những tài nguyên máy chủ phục vụ, bạn cần cẩn thận không lưu trữ quá nhiều; nếu không ứng dụng web của bạn sẽ không có khả năng xử lý nhiều người sử dụng.

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

Một phần của tài liệu Phần 3: Lập trình Cơ sở dữ liệu nâng cao với ADO.NET_Chương 14 (Trang 66 - 68)