Danh mục

ĐỒ ÁN TỐT NGHIỆP TÌM HIỂU NGÔN NGỮ C# VÀ VIẾT MỘT ỨNG DỤNG MINH HỌA PHẦN 7

Số trang: 30      Loại file: pdf      Dung lượng: 578.31 KB      Lượt xem: 13      Lượt tải: 0    
Thư viện của tui

Xem trước 3 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Để tạo ra tên mạnh, một cặp khóa công khai-bí mật được tạo ra cho assembly. Một mã băm (hash code) được tạo ra từ tên, nội dung của các tập tin bên trong assembly và chuỗi biểu diễn khóa công khai. Sau đó mã băm này được mã hóa bằng khóa bí mật, kết quả mã hóa được ghi vào manifest. Quá trình trên được gọi là ký xác nhận vào assembly (signing the assembly). Khi assembly được CLR nạp vào bộ nhớ, CLR sẽ dùng khóa công khai trong manifest giải mã mã băm để xác định...
Nội dung trích xuất từ tài liệu:
ĐỒ ÁN TỐT NGHIỆP TÌM HIỂU NGÔN NGỮ C# VÀ VIẾT MỘT ỨNG DỤNG MINH HỌA PHẦN 7Truy cập dữ liệu với ADO.NET Gvhd: Nguyễn Tấn Trần Minh Khang this.Controls.Add (this.txtCity); this.Controls.Add (this.label5); this.Controls.Add (this.txtAddress); this.Controls.Add (this.label4); this.Controls.Add (this.txtContactName); this.Controls.Add (this.label3); this.Controls.Add (this.txtCompanyName); this.Controls.Add (this.label2); this.Controls.Add (this.txtCompanyID); this.Controls.Add (this.label1); this.Controls.Add (this.btnNew); this.Controls.Add (this.txtCustomerName); this.Controls.Add (this.btnUpdate); this.Controls.Add (this.lblMessage); this.Controls.Add (this.btnDelete); this.Controls.Add (this.lbCustomers); } // Quản lý sự kiện nhấn nút tạo mới (New) protected void btnNew_Click( object sender, System.EventArgs e) { // tạo một dòng mới DataRow newRow = dataTable.NewRow( ); newRow[CustomerID] = txtCompanyID.Text; newRow[CompanyName] = txtCompanyName.Text; newRow[ContactName] = txtContactName.Text; newRow[ContactTitle] = txtContactTitle.Text; newRow[Address] = txtAddress.Text; newRow[City] = txtCity.Text; newRow[PostalCode] = txtZip.Text; newRow[Phone] = txtPhone.Text; // thêm một dòng mới vào bảng dataTable.Rows.Add(newRow); // cập nhật vào cơ sở dữ liệu DataAdapter.Update(DataSet,Customers); // thông báo cho người dùng biết câu truy vấn thay đổi lblMessage.Text = DataAdapter.UpdateCommand.CommandText; Application.DoEvents( ); DataSet.AcceptChanges( ); // hiển thị lại dữ liệu cho điều khiển ListBox PopulateLB( ); // Xoá trằng các TextBox ClearFields( ); } // Xóa trắng các TextBox private void ClearFields( ) { txtCompanyID.Text = ; txtCompanyName.Text = ; txtContactName.Text = ; txtContactTitle.Text = ; txtAddress.Text = ; 169Truy cập dữ liệu với ADO.NET Gvhd: Nguyễn Tấn Trần Minh Khang txtCity.Text = ; txtZip.Text = ; txtPhone.Text = ; } // quản lý sự kiện nhất nút chọn cập nhật (Update) protected void btnUpdate_Click( object sender, EventArgs e) { // lấy vể dòng được chọn trên ListBox DataRow targetRow = dataTable.Rows[lbCustomers.SelectedIndex]; // thông báo cho người biết dòng cập nhật lblMessage.Text = Updating + targetRow[CompanyName]; Application.DoEvents( ); // hiệu chỉnh dòng targetRow.BeginEdit( ); targetRow[CompanyName] = txtCustomerName.Text; targetRow.EndEdit( ); // lấy về các dòng thay đổi DataSet DataSetChanged = DataSet.GetChanges(DataRowState.Modified); // đảm bảo không có dòng nào có lỗi bool okayFlag = true; if (DataSetChanged.HasErrors) { okayFlag = false; string msg = Error in row with customer ID ; // kiểm tra lỗi trên từng bảng foreach (DataTable theTable in DataSetChanged.Tables) { // nếu bảng có lỗi thì tìm lỗi trên dòng cụ thể if (theTable.HasErrors) { // lấy các dòng có lỗi DataRow[] errorRows = theTable.GetErrors( ); // duyệt qua từng dòng có lỗi để thống báo. foreach (DataRow theRow in errorRows) { msg = msg + theRow[CustomerID]; } } } lblMessage.Text = msg; } // nếu không có lỗi if (okayFlag) { // trộn các thay đổi trong 2 DataSet thành một DataSet.Merge(DataSetChanged); // cập nhật cơ sở dữ liệu 170Truy cập dữ liệu với ADO.NET Gvhd: Nguyễn Tấn Trần Minh Khang DataAdapter.Update(DataSet,Customers); // thông báo câu truy vấn cho người dùng lblMessage.Text = DataAdapter.UpdateCommand.CommandText; Application.DoEvents( ); // cập nhật DataSet và // hiển thị dữ liệu mới cho ListBox DataSet.AcceptChanges( ); ...

Tài liệu được xem nhiều: