Bài 7: Lập trình với CSDL – Sử dụng DESIGNER & Triển khai ứng dụng - Lập trình winform - Giáo trình FPT

5,272 views
5,293 views

Published on

Sử dụng Wizard để tạo nguồn dữ liệu
Buộc dữ liệu với điều khiển bằng Designer
Buộc dữ liệu với điều khiển DataGridView
Buộc dữ liệu với TextBox
Buộc dữ liệu với ComboBox
Truy vấn dữ liệu bằng Designer
Tùy chỉnh Toolbar
Tạo form Master/Detail
Triển khai ứng dụng
Sử dụng Wizard để tạo nguồn dữ liệu
Buộc dữ liệu với điều khiển bằng Designer
Buộc dữ liệu với điều khiển DataGridView
Buộc dữ liệu với TextBox
Buộc dữ liệu với ComboBox
Truy vấn dữ liệu bằng Designer
Tùy chỉnh Toolbar
Tạo form Master/Detail
Triển khai ứng dụng

0 Comments
6 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
5,272
On SlideShare
0
From Embeds
0
Number of Embeds
120
Actions
Shares
0
Downloads
1,294
Comments
0
Likes
6
Embeds 0
No embeds

No notes for slide

Bài 7: Lập trình với CSDL – Sử dụng DESIGNER & Triển khai ứng dụng - Lập trình winform - Giáo trình FPT

  1. 1. Bài 7:LẬP TRÌNH VỚI CSDL – SỬ DỤNG DESIGNER& TRIỂN KHAI ỨNG DỤNG
  2. 2. Thao tác sử dụng kiến trúc kết nốiSqlCommandSqlDataReaderĐiều khiển buộcBuộc dữ liệu với DataGridViewBuộc dữ liệu với ComboBoxBindingSourceĐiều hướng dữ liệuLọc dữ liệuFile configHệ thống bài cũThao tác sử dụng kiến trúc kết nốiSqlCommandSqlDataReaderĐiều khiển buộcBuộc dữ liệu với DataGridViewBuộc dữ liệu với ComboBoxBindingSourceĐiều hướng dữ liệuLọc dữ liệuFile configLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 2
  3. 3. Mục tiêu bài họcSử dụng Wizard để tạo nguồn dữ liệuBuộc dữ liệu với điều khiển bằng DesignerBuộc dữ liệu với điều khiển DataGridViewBuộc dữ liệu với TextBoxBuộc dữ liệu với ComboBoxTruy vấn dữ liệu bằng DesignerTùy chỉnh ToolbarTạo form Master/DetailTriển khai ứng dụngSử dụng Wizard để tạo nguồn dữ liệuBuộc dữ liệu với điều khiển bằng DesignerBuộc dữ liệu với điều khiển DataGridViewBuộc dữ liệu với TextBoxBuộc dữ liệu với ComboBoxTruy vấn dữ liệu bằng DesignerTùy chỉnh ToolbarTạo form Master/DetailTriển khai ứng dụngLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 3
  4. 4. SỬ DỤNG WIZARDĐỂ TẠO NGUỒN DỮ LIỆULập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 4SỬ DỤNG WIZARDĐỂ TẠO NGUỒN DỮ LIỆU
  5. 5. Mỗi ứng dụng đều làm việc với một nguồn dữ liệunhất định, thường không làm việc với cả CSDLCấu hình nguồn dữ liệu cho phép lấy dữ liệu cần thiếtcho ứng dụngỨng dụng sẽ tương tác với nguồn dữ liệu này thay vìtrên data base. Thay đổi trên nguồn dữ liệu sẽ được cậpnhật lại CSDLSử dụng cửa sổ Data Sources để cấu hình nguồn dữliệuCấu hình nguồn dữ liệu bằng WizardMỗi ứng dụng đều làm việc với một nguồn dữ liệunhất định, thường không làm việc với cả CSDLCấu hình nguồn dữ liệu cho phép lấy dữ liệu cần thiếtcho ứng dụngỨng dụng sẽ tương tác với nguồn dữ liệu này thay vìtrên data base. Thay đổi trên nguồn dữ liệu sẽ được cậpnhật lại CSDLSử dụng cửa sổ Data Sources để cấu hình nguồn dữliệuLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 5
  6. 6. B1. Nhấn vào Add New Data SourceB2. Chọn kiểu nguồn dữ liệuChọn Database để lấy dữ liệu từ CSDLDemo cấu hình nguồn dữ liệuLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 612
  7. 7. B3. Chọn mô hình dữ liệu cho nguồn dữ liệuChọn DatasetDemo cấu hình nguồn dữ liệuLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 73
  8. 8. B4. Chọn kết nốiChọn kết nối có sẵnDemo cấu hình nguồn dữ liệuLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 84
  9. 9. B4. Chọn kết nốiChọn kết nối mớiDemo cấu hình nguồn dữ liệuLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 9Kết quả của quá trình chọn kếtnối là chuỗi kết nối
  10. 10. B5. Lưu chuỗi kết nối vào file app.configDemo cấu hình nguồn dữ liệuLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 105
  11. 11. B6. Chọn dữ liệu mong muốnDemo cấu hình nguồn dữ liệuLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 116
  12. 12. Nguồn dữ liệu được hiển thị trên cửa sổ Data Sources làdataset định kiểuFile chứa cấu trúc của lớp DataSet bao gồm bảng trongCSDL, cột trong bảng, kiểu dữ liệu của cột và ràngbuộc của các bảngDataset định kiểuDataset định kiểu kế thừa từ datasetVới dataset định kiểu, có thể tham chiếu đến bảng, cộtbằng tên bảng, tên cột thay vì thông qua collectionKết quả cấu hình nguồn dữ liệuNguồn dữ liệu được hiển thị trên cửa sổ Data Sources làdataset định kiểuFile chứa cấu trúc của lớp DataSet bao gồm bảng trongCSDL, cột trong bảng, kiểu dữ liệu của cột và ràngbuộc của các bảngDataset định kiểuDataset định kiểu kế thừa từ datasetVới dataset định kiểu, có thể tham chiếu đến bảng, cộtbằng tên bảng, tên cột thay vì thông qua collectionLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 12//Truy cập đến bảng trong dataset không định kiểumMABooksDataSet.Tables["Products"];//Truy cập đến bảng trong dataset định kiểumMABooksDataSet.Products;
  13. 13. Kết quả quá trình cấu hình nguồn dữ liệu là nguồn dữliệu tương đương với kết quả của đoạn mãTuy nhiên nguồn dữ liệu được tạo bởi đoạn mã này làdataset không định kiểuKết quả cấu hình nguồn dữ liệuconn = new SqlConnection(“chuỗi-kết-nối");daCustomers = new SqlDataAdapter("Select ProductCode, Description, UnitPrice from Product", conn);ds = new DataSet();daCustomers.Fill(ds,"customers");Kết quả quá trình cấu hình nguồn dữ liệu là nguồn dữliệu tương đương với kết quả của đoạn mãTuy nhiên nguồn dữ liệu được tạo bởi đoạn mã này làdataset không định kiểuLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 13conn = new SqlConnection(“chuỗi-kết-nối");daCustomers = new SqlDataAdapter("Select ProductCode, Description, UnitPrice from Product", conn);ds = new DataSet();daCustomers.Fill(ds,"customers");
  14. 14. BUỘC DỮ LIỆU VỚI ĐIỀUKHIỂN BẰNG DESIGNERLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 14BUỘC DỮ LIỆU VỚI ĐIỀUKHIỂN BẰNG DESIGNER
  15. 15. Kéo bảng Products từ cửa sổ Data Sources vào form,Visual Studio tạo điều khiển DataGridView buộc với bảngdữ liệu ProductsDataGridView được thêm vào form cùng với toolbar điềuhướngBuộc DataGridView với bảng ProductsLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 15
  16. 16. Khi tạo DataGridView Visual Studio tự động thêm 5 đốitượng vào khay Component DesignerĐối tượng DataSet: định nghĩa dữ liệu của nguồn dữ liệu(bảng Products)Đối tượng TableAdapter: Cung cấp các câu lệnh sql đượcsử dụng để làm việc với bảng ProductsTableAdapter giống như DataAdapter nhưng chỉ được tạo bởiDesignerĐối tượng TableAdapterManager: Thay đổi dữ liệu trêncác bảng liên quanBindingSource: Chỉ ra nguồn dữ liệu mà điều khiển buộcvà cung cấp các chức năng để thao tác với nguồn dữ liệuBindingNavigator: Định nghĩa Toolbar bao gồm các điềukhiển để thao tác với nguồn dữ liệuBuộc DataGridView với bảng ProductsKhi tạo DataGridView Visual Studio tự động thêm 5 đốitượng vào khay Component DesignerĐối tượng DataSet: định nghĩa dữ liệu của nguồn dữ liệu(bảng Products)Đối tượng TableAdapter: Cung cấp các câu lệnh sql đượcsử dụng để làm việc với bảng ProductsTableAdapter giống như DataAdapter nhưng chỉ được tạo bởiDesignerĐối tượng TableAdapterManager: Thay đổi dữ liệu trêncác bảng liên quanBindingSource: Chỉ ra nguồn dữ liệu mà điều khiển buộcvà cung cấp các chức năng để thao tác với nguồn dữ liệuBindingNavigator: Định nghĩa Toolbar bao gồm các điềukhiển để thao tác với nguồn dữ liệuLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 16
  17. 17. Mã được sinh ra bởi Visual StudioBuộc DataGridView với bảng Productsprivate void Form1_Load(object sender, EventArgs e){this.productsTableAdapter.Fill(this.mMABooksDataSet.Products);}private void productsBindingNavigatorSaveItem_Click(object sender, EventArgs e){this.Validate();this.productsBindingSource.EndEdit();this.tableAdapterManager.UpdateAll(this.mMABooksDataSet);}Lập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 17private void Form1_Load(object sender, EventArgs e){this.productsTableAdapter.Fill(this.mMABooksDataSet.Products);}private void productsBindingNavigatorSaveItem_Click(object sender, EventArgs e){this.Validate();this.productsBindingSource.EndEdit();this.tableAdapterManager.UpdateAll(this.mMABooksDataSet);}
  18. 18. Ngoài cách hiển thị theo DataGridView, Visual Studiocũng có thể hiển thị như sau:Buộc dữ liệu vào TextBoxLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 18
  19. 19. B1. Thêm nguồn dữ liệuB2. Chọn bảng và chọn kiểu hiển thị là DetailsDemo buộc dữ liệu vào TextBoxB1. Thêm nguồn dữ liệuB2. Chọn bảng và chọn kiểu hiển thị là DetailsLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 19
  20. 20. B3. Thay đổi kiểu hiển thị phù hợp cho từng cộtB4. Kéo bảng sang formDemo buộc dữ liệu vào TextBoxB3. Thay đổi kiểu hiển thị phù hợp cho từng cộtB4. Kéo bảng sang formLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 20
  21. 21. B5. Thay đổi vị trí hình dạng của các điều khiểnB6. Thay đổi thuộc tính của các điều khiển nếu muốnDemo buộc dữ liệu vào TextBoxB5. Thay đổi vị trí hình dạng của các điều khiểnB6. Thay đổi thuộc tính của các điều khiển nếu muốnLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 21Thuộc tínhReadOnlyđược thiếtlập là true
  22. 22. B1. Tạo ComboxBoxC1.Đổi cách hiển thị của cột State trên cửa Data Sources làComboxBoxKéo cột State vào formThiết lập thuộc tính Text của ComboBox là NoneC2Kéo ComboBox từ Toolbox vào formBuộc dữ liệu với ComboBoxB1. Tạo ComboxBoxC1.Đổi cách hiển thị của cột State trên cửa Data Sources làComboxBoxKéo cột State vào formThiết lập thuộc tính Text của ComboBox là NoneC2Kéo ComboBox từ Toolbox vào formLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 22
  23. 23. B2. Thiết lập các thuộc tính hiển thị cho ComboBoxData Source: Nguồn dữ liệu (bảng) được buộc vàoComboboxDisplay Member: Giá trị hiển thị của ComboBoxValue Member: Giá trị của ComboxBoxSelected Value: Giá trị được chọn trên ComboboxBuộc dữ liệu với ComboBoxB2. Thiết lập các thuộc tính hiển thị cho ComboBoxData Source: Nguồn dữ liệu (bảng) được buộc vàoComboboxDisplay Member: Giá trị hiển thị của ComboBoxValue Member: Giá trị của ComboxBoxSelected Value: Giá trị được chọn trên ComboboxLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 23
  24. 24. DataSource: statesBindingSource(bảng State)Display Member: Cột StateNameValue Member: Cột StateCodeSelected Value: Cột State củabảng Customer(customerBindingSource)Buộc dữ liệu với ComboBoxDataSource: statesBindingSource(bảng State)Display Member: Cột StateNameValue Member: Cột StateCodeSelected Value: Cột State củabảng Customer(customerBindingSource)Lập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 24Thiết lập thuộc tính DropDownStyle làDropDownList để người dùng không nhập giá trị vào
  25. 25. TRUY VẤN DỮ LIỆUBẰNG DESIGNERLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 25TRUY VẤN DỮ LIỆUBẰNG DESIGNER
  26. 26. Sử dụng truy vấn để chỉ hiển thị dữ liệu mong muốnB1. Thêm truy vấnChọn điều khiển bất kỳ buộc vào dữ liệuNhấn Add Query trong menu thông minh của điều khiểnđóTruy vấn dữ liệuLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 26
  27. 27. B2. Đặt tên cho truy vấnB4. Viết thêm mệnh đề Where cho truy vấnTruy vấn dữ liệuLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 27
  28. 28. Kết quả:Giao diện sẽ tự thêm một toolbar chứaLabel chứa tên của tham sốTextBox cho phép người dùng nhập tham số cho truy vấnButton để thực thi truy vấnTruy vấn dữ liệuLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 28
  29. 29. Mã được tự sinh raTruy vấn dữ liệuprivate void fillByCustomerIDToolStripButton_Click(object sender, EventArgs e){try{this.customersTableAdapter.FillByCustomerID(this.mMABooksDataSet1.Customers,((int)(System.Convert.ChangeType(customerIDToolStripTextBox1.Text, typeof(int)))));}catch (System.Exception ex){System.Windows.Forms.MessageBox.Show(ex.Message);}}Lập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 29private void fillByCustomerIDToolStripButton_Click(object sender, EventArgs e){try{this.customersTableAdapter.FillByCustomerID(this.mMABooksDataSet1.Customers,((int)(System.Convert.ChangeType(customerIDToolStripTextBox1.Text, typeof(int)))));}catch (System.Exception ex){System.Windows.Forms.MessageBox.Show(ex.Message);}}
  30. 30. TÙY CHỈNH TOOBARLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 30TÙY CHỈNH TOOBAR
  31. 31. Toolbar tự động thêm vào khi kéo bảng từ nguồn dữ liệuvào form cũng giống như Toolbar thông thườngCó tùy chỉnh và viết xử lý sự kiện cho các button trêntoolbar nàyToolbar tự động thêm vào khi kéo bảng từ nguồn dữ liệuvào form cũng giống như Toolbar thông thườngCó tùy chỉnh và viết xử lý sự kiện cho các button trêntoolbar nàyLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 31
  32. 32. B1. Thêm chức năng vào toolbarTùy chỉnh ToolbarLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 32
  33. 33. B2. Viết xử lý sự kiệnXử lý sự kiện cho button CancelTùy chỉnh Toolbarprivate void bindingNavigatorCancelItem_Click(object sender, EventArgs e){this.customersBindingSource.CancelEdit();}B2. Viết xử lý sự kiệnXử lý sự kiện cho button CancelLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 33private void bindingNavigatorCancelItem_Click(object sender, EventArgs e){this.customersBindingSource.CancelEdit();}
  34. 34. B2. Viết xử lý sự kiệnXử lý sự kiện cho button Get All CustomerTùy chỉnh Toolbarprivate void fillToolStripButton_Click(object sender, EventArgs e){try{this.customersTableAdapter.Fill(this.mmaBooksDataSet.Customers);}catch (SqlException ex){MessageBox.Show("Database error # " + ex.Number +": " + ex.Message, ex.GetType().ToString());}}Lập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 34private void fillToolStripButton_Click(object sender, EventArgs e){try{this.customersTableAdapter.Fill(this.mmaBooksDataSet.Customers);}catch (SqlException ex){MessageBox.Show("Database error # " + ex.Number +": " + ex.Message, ex.GetType().ToString());}}
  35. 35. FORMMASTER/DETAILLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 35FORMMASTER/DETAIL
  36. 36. Ví dụ về form Master/DetailForm Master/Detail thường thể hiện thông tin của haibảng có quan hệ một nhiềuThiết kế form Master/DetailVí dụ về form Master/DetailForm Master/Detail thường thể hiện thông tin của haibảng có quan hệ một nhiềuLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 36
  37. 37. B1. Tạo nguồn dữ liệu từ cửa sổ Data Sources gồm haibảng Customers và InvoicesDemo thiết kế form Master/DetailLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 37Kết quả là nguồn dữ liệu gồm hai bảng Customers vàInvoices. Trong bảng Customers có bảng con làinvoices thể hiện hai bảng này có quan hệ một – nhiều
  38. 38. B2. Kéo bảng Customers vào formTùy chỉnh các điều khiển trên formDemo thiết kế form Master/DetailLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 38
  39. 39. B3. Kéo bảng Invoices thuộc bảng Customers vào formDemo thiết kế form Master/DetailLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 39
  40. 40. TRIỂN KHAI ỨNG DỤNGLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 40
  41. 41. Triển khai là quá trình tạo bản cài đặt của ứng dụng đểcó thể cài đặt ứng dụng trên máy tính của người dùngCó 3 cách để triển khai ứng dụngXcopyClickOneSetup programTriển khai ứng dụngTriển khai là quá trình tạo bản cài đặt của ứng dụng đểcó thể cài đặt ứng dụng trên máy tính của người dùngCó 3 cách để triển khai ứng dụngXcopyClickOneSetup programLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 41
  42. 42. Cài đặt bằng cách copy thư mục ứng dụng vào ổ đĩa ngườidùngSử dụng lệnh Xcopy của DOS hoặc Windows ExplorerKhông tạo icon trên menu StartKhông hỗ trợ cài đặt các file bắt buộc để chạy ứng dụng(ví dụ .NET FrameWork)Không hỗ trợ tự động update phiên bảnKhông hỗ trợ gỡ bỏ ứng dụngNgười dùng chạy ứng dụng bằng cách nhấn đúp vào file exeChạy ổn định khi tất cả các file cần cho ứng dụng đều cótrong thư mục ứng dụngPhù hợp cho ứng dụng đơn giản và ít người dùngXcopyCài đặt bằng cách copy thư mục ứng dụng vào ổ đĩa ngườidùngSử dụng lệnh Xcopy của DOS hoặc Windows ExplorerKhông tạo icon trên menu StartKhông hỗ trợ cài đặt các file bắt buộc để chạy ứng dụng(ví dụ .NET FrameWork)Không hỗ trợ tự động update phiên bảnKhông hỗ trợ gỡ bỏ ứng dụngNgười dùng chạy ứng dụng bằng cách nhấn đúp vào file exeChạy ổn định khi tất cả các file cần cho ứng dụng đều cótrong thư mục ứng dụngPhù hợp cho ứng dụng đơn giản và ít người dùngLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 42
  43. 43. B1. Chọn tùy chọn build là ReleaseNhấn vào solution, chọn Solution Configurations,chọn Release trong mục Activate solutionconfigurationDemo triển khai ứng dụng XCopyB1. Chọn tùy chọn build là ReleaseNhấn vào solution, chọn Solution Configurations,chọn Release trong mục Activate solutionconfigurationLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 43
  44. 44. B2. Build ứng dụngThư mục Release sẽ được tạo ra trong thư mục binThư mục Release chứa các assembly cần thiết cho ứngdụngKhông cần cấu hình hay đăng ký registryNếu ứng dụng sử dụng các tính năng của .NET Framework4, phải cài đặt ứng FrameWork thì mới chạy được ứngdụngDemo triển khai ứng dụng XCopyB2. Build ứng dụngThư mục Release sẽ được tạo ra trong thư mục binThư mục Release chứa các assembly cần thiết cho ứngdụngKhông cần cấu hình hay đăng ký registryNếu ứng dụng sử dụng các tính năng của .NET Framework4, phải cài đặt ứng FrameWork thì mới chạy được ứngdụngLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 44
  45. 45. B3. Copy thư mục Release vào ổ cứng người dùngSử dụng Windows ExplorerSử dụng lệnh XcopyKý tự S là thông số chỉ ra rằng copy tất cả các file trong thưmục và thư mục con của thư mục guồn vào thư mục đíchSử dụng file batchViết lệnh Xcopy vào file batchChạy file batch khi muốn cài đặt hoặc cập nhật phiên bảnmớiDemo triển khai ứng dụng XCopyC:>xcopy “đường-dẫn-thư-mục-nguồn” “đường-dẫn-thư-mục-đích /SB3. Copy thư mục Release vào ổ cứng người dùngSử dụng Windows ExplorerSử dụng lệnh XcopyKý tự S là thông số chỉ ra rằng copy tất cả các file trong thưmục và thư mục con của thư mục guồn vào thư mục đíchSử dụng file batchViết lệnh Xcopy vào file batchChạy file batch khi muốn cài đặt hoặc cập nhật phiên bảnmớiLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 45
  46. 46. Cho phép cài đặt ứng dụng bằng cách nhấn vào linktrên trang webTạo icon cho ứng dụng trên menu StartCho phép sử dụng cửa sổ Uninstall or Change a Program(Win 7) hoặc cửa sổ Add or Remove Program để gỡ bỏứng dụngTự động kiểm tra và cài đặt các file cần thiết cho ứngdụngCho phép tự động update ứng dụngPhù hợp cho các ứng dụng nhiều người dùngTriển khai ClickOneCho phép cài đặt ứng dụng bằng cách nhấn vào linktrên trang webTạo icon cho ứng dụng trên menu StartCho phép sử dụng cửa sổ Uninstall or Change a Program(Win 7) hoặc cửa sổ Add or Remove Program để gỡ bỏứng dụngTự động kiểm tra và cài đặt các file cần thiết cho ứngdụngCho phép tự động update ứng dụngPhù hợp cho các ứng dụng nhiều người dùngLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 46
  47. 47. Mở cửa sổ Properties:Nhấn vào project và chọn PropertiesDemo triển khai ClickOneMở cửa sổ Properties:Nhấn vào project và chọn PropertiesLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 47
  48. 48. Chọn PublishDemo triển khai ClickOne12 456Lập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 483567
  49. 49. B1. Chỉ ra vị trí muốn phát hành ứng dụng (website, ftpserver hay đường dẫn đến thư mục trên máy)Publish ứng dụng lên website, webserver phải được cài đặtFrontPage Server ExtensionsB2. Chỉ ra chế độ cài đặtAvailable online only:Người dùng chạy ứng dụng từ serverNgười dùng phải có kết nối internet để chạy ứng dụngỨng dụng được download từ server mỗi lần chạy nên nó sẽkhởi động chậm hơn so với ứng dụng offlineAvalable offline as wellỨng dụng sẽ được cài đặt lên ổ cứng người dùngIcon sẽ được thêm vào menu StartCó thể sử dụng tính năng Uninstall or Change a Program củaWin 7Các bước triển khai ClickOneB1. Chỉ ra vị trí muốn phát hành ứng dụng (website, ftpserver hay đường dẫn đến thư mục trên máy)Publish ứng dụng lên website, webserver phải được cài đặtFrontPage Server ExtensionsB2. Chỉ ra chế độ cài đặtAvailable online only:Người dùng chạy ứng dụng từ serverNgười dùng phải có kết nối internet để chạy ứng dụngỨng dụng được download từ server mỗi lần chạy nên nó sẽkhởi động chậm hơn so với ứng dụng offlineAvalable offline as wellỨng dụng sẽ được cài đặt lên ổ cứng người dùngIcon sẽ được thêm vào menu StartCó thể sử dụng tính năng Uninstall or Change a Program củaWin 7Lập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 49
  50. 50. B3. Chỉ ra phiên bản của ứng dụngMặc định phiên bản của ứng dụng sẽ tăng mỗi lần bạnpublish ứng dụngCó thể tự thiết lập phiên bản mong muốnCác bước triển khai ClickOneLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 50
  51. 51. B4. Chỉ ra file của ứng dụngTheo mặc định chỉ có file exe và file manifest được publishNhấn vào Show all files để hiển thị file pdb và publishCác bước triển khai ClickOneLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 51
  52. 52. B5. Chỉ ra những ứng dụng cần phải được cài đặt trướcđể chạy ứng dụngChỉ ra những ứng dụng cần được cài đặtChỉ ra vị trí để download những ứng dụng đóCác bước triển khai ClickOneLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 52
  53. 53. B6. Thiết lập tùy chọn cập nhậtCác bước triển khai ClickOneLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 53
  54. 54. B7. Thiết lập tùy chọn publishCác bước triển khai ClickOneLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 54
  55. 55. Cho phép người dùng cài đặt ứng dụng bằng cách chạychương trình cài đặt SetupCho phép người dùng chỉ ra thư mục cài đặtTạo icon trên menu StartCho phép sử dụng tính năng Uninstall or Change aProgram của WindowKiểm tra các ứng dụng phải được cài đặt hoặc các filecần thiết để chạy ứng dụngCó thể cài đặt các thành phần chia sẻ trong GACGAC (Global Assembly Cache) là thư mục chứa tất cả cácAssembly chung cho tất cả các phần mềmCó thể thay đổi registry để cài đặt các thành phần COMPhù hợp với các ứng dụng phức tạpTriển khai chương trình cài đặt SetupCho phép người dùng cài đặt ứng dụng bằng cách chạychương trình cài đặt SetupCho phép người dùng chỉ ra thư mục cài đặtTạo icon trên menu StartCho phép sử dụng tính năng Uninstall or Change aProgram của WindowKiểm tra các ứng dụng phải được cài đặt hoặc các filecần thiết để chạy ứng dụngCó thể cài đặt các thành phần chia sẻ trong GACGAC (Global Assembly Cache) là thư mục chứa tất cả cácAssembly chung cho tất cả các phần mềmCó thể thay đổi registry để cài đặt các thành phần COMPhù hợp với các ứng dụng phức tạpLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 55
  56. 56. B1. Tạo Project SetupThêm Project setup vào solutionCác bước triển khaichương trình cài đặt SetupLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 56Project setup đượcthêm vào
  57. 57. Các bước triển khaichương trình cài đặt SetupLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 57
  58. 58. B2. Thiết lập cho project SetupThiết lập file chạy chương trình cài đặtNhấn vào một thư mục bất kỳ trong File System (ApplicationFolder)Chọn Add Project OutputChọn Primary outputThêm các file bổ sung như Readme hoặc file CSDLNhấn vào một thư mục bất kỳ trong File SystemChọn Add FileCác bước triển khaichương trình cài đặt SetupB2. Thiết lập cho project SetupThiết lập file chạy chương trình cài đặtNhấn vào một thư mục bất kỳ trong File System (ApplicationFolder)Chọn Add Project OutputChọn Primary outputThêm các file bổ sung như Readme hoặc file CSDLNhấn vào một thư mục bất kỳ trong File SystemChọn Add FileLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 58
  59. 59. B3. Build project SetupChọn tính năng Solution ConfigurationsChọn ReleaseChọn build FutureSetupCác bước triển khaichương trình cài đặt SetupLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 59
  60. 60. TRIỂN KHAI ỨNGDỤNG SỬ DỤNG CSDLLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 60TRIỂN KHAI ỨNGDỤNG SỬ DỤNG CSDL
  61. 61. Triển trai cho một nhóm người dùng được kết nối vớinhau bởi mạng LANLưu CSDL trên serverThiết lập chuỗi kết nối trỏ đến ServerThiết lập cho tất cả người dùng đều truy cập được đếnServerTriển khai ClickOneTriển trai cho một nhóm người dùng được kết nối vớinhau bởi mạng LANLưu CSDL trên serverThiết lập chuỗi kết nối trỏ đến ServerThiết lập cho tất cả người dùng đều truy cập được đếnServerLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 61Data Source=SAMSUNG-R439;InitialCatalog=MMABooks;UserID=sa;Password=123456Tên server
  62. 62. Triển khai cho người dùng độc lậpKhi triển khai ứng dụng cho từng người dùng độc lập cầnphải lưu trữ CSDL trên máy tính của người dùng nên phảiThêm file CSDL (.mdf và ldf) vào project  hai file này đượctự động thêm vào cửa sổ Application FilesThiết lập chuỗi kết nốiTriển khai ClickOneTriển khai cho người dùng độc lậpKhi triển khai ứng dụng cho từng người dùng độc lập cầnphải lưu trữ CSDL trên máy tính của người dùng nên phảiThêm file CSDL (.mdf và ldf) vào project  hai file này đượctự động thêm vào cửa sổ Application FilesThiết lập chuỗi kết nốiLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 62Data Source=SAMSUNG-R439;AttachDbFilename=|DataDirectory|MMABooks.mdf;User ID=sa;Password=123456
  63. 63. Triển khai ClickOneLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 63File mdf và log được tự động thêm vào Application Files
  64. 64. Triển trai cho một nhóm người dùng được kết nối vớinhau bởi mạng LANThực hiện giống như với ClickOneTriển khai cho người dùng độc lậpThêm thư file CSDL vào project Set (thư mục ApplicationFolder)Thiết lập ứng dụng cần có để chạy ứng dụngChọn page PropertyChọn button PrerequisitesTriển khai chương trình cài đặt SetupTriển trai cho một nhóm người dùng được kết nối vớinhau bởi mạng LANThực hiện giống như với ClickOneTriển khai cho người dùng độc lậpThêm thư file CSDL vào project Set (thư mục ApplicationFolder)Thiết lập ứng dụng cần có để chạy ứng dụngChọn page PropertyChọn button PrerequisitesLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 64
  65. 65. .NET hỗ trợ các tính năng tiện lợi để người dùng tạonhanh ứng dụngNgười dùng có thể tạo nguồn dữ liệu bằng Wizardthay vì bằng cách viết mãNgười dùng có thể kéo dữ liệu từ nguồn dữ liệu vàoform cùng với tùy chỉnh nhỏ để được form mong muốn.NET hỗ trợ truy vấn bằng Designer để lọc dữ liệumong muốnTổng kết bài học.NET hỗ trợ các tính năng tiện lợi để người dùng tạonhanh ứng dụngNgười dùng có thể tạo nguồn dữ liệu bằng Wizardthay vì bằng cách viết mãNgười dùng có thể kéo dữ liệu từ nguồn dữ liệu vàoform cùng với tùy chỉnh nhỏ để được form mong muốn.NET hỗ trợ truy vấn bằng Designer để lọc dữ liệumong muốnLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 65
  66. 66. Visual Studio hỗ trợ khiển khai ứng dụng theo 3 cáchXcopy, ClickOne và chương trình SetupXcopy thường được dùng cho ứng dụng đơn giản, ítngười dùngClickOne thường được dùng cho ứng dụng nhiềungười dùngChương trình Setup thường được dùng cho ứng dụngphức tạpClickOne và Setup đều hỗ trợ triển khai ứng dụng cóCSDLTổng kết bài họcVisual Studio hỗ trợ khiển khai ứng dụng theo 3 cáchXcopy, ClickOne và chương trình SetupXcopy thường được dùng cho ứng dụng đơn giản, ítngười dùngClickOne thường được dùng cho ứng dụng nhiềungười dùngChương trình Setup thường được dùng cho ứng dụngphức tạpClickOne và Setup đều hỗ trợ triển khai ứng dụng cóCSDLLập trình với CSDL - Sử dụng Designer & Triển khai ứng dụng 66

×