1 bai giang ngon ngu lap trinh ung dung

150 437 1
1 bai giang ngon ngu lap trinh ung dung

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

MỤC LỤCChương 1: Tổng quan ...................................................................................................... 51.1 Tổng quan về Microsoft .Net ................................................................................. 51.1.1 Nguồn gốc Microsft .Net ................................................................................ 51.2 Ngôn ngữ C ........................................................................................................ 101.2.1 Tại sao chọn ngôn ngữ C ............................................................................ 101.2.2 Ngôn ngữ C với ngôn ngữ khác .................................................................. 121.3 Làm quen với visual studio 2010 ......................................................................... 131.3.1 Giới thiệu Visual Studio.NET 2010 .............................................................. 131.3.2 Khởi động Visual C 2010 và giao diện ....................................................... 141.3.3 Viết chương trình đầu tiên ............................................................................ 15Chương 2: Ngôn ngữ lập trình C ................................................................................. 172.1 Biến hằng và các kiểu dữ liệu .............................................................................. 172.1.1 Biến ............................................................................................................... 172.1.2 Hằng .............................................................................................................. 172.1.3 Các kiểu dữ liệu ............................................................................................ 182.1.4 Chuyển kiểu dữ liệu ...................................................................................... 192.2 Biểu thức, toán tử, khoảng trắng .......................................................................... 192.3 Nhập xuất dữ liệu ............................................................................................... 232.4 Các cấu trúc điều khiển ........................................................................................ 242.4.1 Câu lệnh lựa chọn if ...................................................................................... 242.4.2 Câu lệnh lựa chọn Case ................................................................................. 252.4.3 Cấu trúc lặp for.............................................................................................. 262.4.4 Cấu trúc lặp while. ........................................................................................ 272.4.5 Cấu trúc lặp do…while ................................................................................. 272.5 Mảng .................................................................................................................... 282.5.1 Mảng một chiều............................................................................................. 282.5.2 Câu lệnh foreach ........................................................................................... 292.5.3 Mảng đa chiều ............................................................................................... 292.7 Hàm và cách truyền tham số ................................................................................ 342.8 Xử lý ngoại lệ....................................................................................................... 382.7.1 Phát sinh và bắt giữ ngoại lệ ......................................................................... 392.7.2 Những đối tượng ngoại lệ ............................................................................. 44Chương 3: Lập trình hướng đối tượng trong C ........................................................... 463.1 Xây dựng lớp – Đối tượng ................................................................................... 463.1.1 Định nghĩa lớp ............................................................................................... 463.1.2 Tạo đối tượng ................................................................................................ 493.1.3 Sử dụng các thành viên static ........................................................................ 533.1.4 Nạp chồng ..................................................................................................... 543.2 Kế thừa Đa hình ................................................................................................. 543.2.1 Sự kế thừa ...................................................................................................... 543.2.2 Đa hình .......................................................................................................... 583.2.3 Lớp trừu tượng, lớp cô lập, giao diện ........................................................... 623.3 Các lớp cơ sở trong .NET .................................................................................... 673.3.1 System.Object ............................................................................................... 673.3.2 Xử lý mảng .................................................................................................... 713.3.3 Xử lý chuỗi .................................................................................................... 723.3.4 Biểu thức chính quy ( Regular Expression) .................................................. 833.3.5 Nhóm các đối tượng ...................................................................................... 883.3.6 Dictionaries ................................................................................................... 94Chương 4: Lập trình winform ..................................................................................... 1044.1 Tìm hiểu các điều khiển cơ bản ......................................................................... 1044.1.1 Form ............................................................................................................ 1064.1.3 Nút – Button ................................................................................................ 1094.1.4 Nhãn – Label ............................................................................................... 1094.1.5 ToolTip ........................................................................................................ 1094.2 Một số điều khiển khác ...................................................................................... 1104.2.1 Hộp đánh dấu – CheckBox ......................................................................... 1104.2.2 Nút tuỳ chọn – RadioButton ....................................................................... 1104.2.3 Nhóm – GroupBox ...................................................................................... 1104.2.4 Hộp danh sách – ListBox ............................................................................ 1114.2.5 Hộp lựa chọn – ComboBox......................................................................... 1124.2.6 Điều khiển Panel ......................................................................................... 1124.2.7 Điều khiển PictureBox ................................................................................ 1124.2.8 Điều khiển Timer ........................................................................................ 1134.2.9 ErrorProvider ( ) .......................................................................................... 1134.3 Các hộp thoại thông dụng ................................................................................. 1134.3.1 Hộp hội thoại Open File .............................................................................. 1134.3.2 Hộp thoại SaveFile và luồng FileStream .................................................... 1154.3.3 Hộp thoại Color ........................................................................................... 1164.3.4 Hộp thoại Font............................................................................................. 1174.4 Menu ................................................................................................................. 1184.4.1 Menu – MenuStrip ...................................................................................... 1184.4.2 Popup menu – ContextMenuStrip ............................................................... 119 Chương 5: Lập trình cơ sở dữ liệu............................................................................... 1215.1 Hệ quản trị cơ sở dữ liệu MS SQL Server 2008 ................................................ 1215.1.1 Tổng quan về SQL Server 2008 .................................................................. 1215.1.2 SQL Server Management Studio ................................................................ 1225.1.3 Tạo cơ sở dữ liệu (database) ....................................................................... 1235.1.3 Truy vấn dữ liệu cơ bản .............................................................................. 1285.2 Kết nối CS L ..................................................................................................... 1315.2.1 Giới thiệu về A O.NET ............................................................................. 1315.2.2 Kết nối ......................................................................................................... 1335.3 Các đối tượng hiển thị và xử lý dữ liệu .............................................................. 1345.3.1 DataSet ........................................................................................................ 1345.3.2 Xây dựng một lớp CS L dùng chung ........................................................ 1375.4 Thiết kế báo cáo ................................................................................................. 142

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG BỘ MÔN TRUYỀN THÔNG ĐA PHƯƠNG TIỆN BÀI GIẢNG Ngôn ngữ lập trình ứng dụng Thông tin môn học : Số tín : 30 Số tiết lý thuyết : 30 Số tiết thực hành : Số tiết thảo luận : Đại học Hệ đào tạo : Truyền thông đa phương tiện Ngành đào tạo Thái Nguyên, 2014 Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện MỤC LỤC Chương 1: Tổng quan 1.1 Tổng quan Microsoft Net 1.1.1 Nguồn gốc Microsft Net 1.2 Ngôn ngữ C# 10 1.2.1 Tại chọn ngôn ngữ C# 10 1.2.2 Ngôn ngữ C# với ngôn ngữ khác 12 1.3 Làm quen với visual studio 2010 13 1.3.1 Giới thiệu Visual Studio.NET 2010 13 1.3.2 Khởi động Visual C# 2010 giao diện .14 1.3.3 Viết chương trình 15 Chương 2: Ngôn ngữ lập trình C# 17 2.1 Biến kiểu liệu 17 2.1.1 Biến .17 2.1.2 Hằng 17 2.1.3 Các kiểu liệu 18 2.1.4 Chuyển kiểu liệu 19 2.2 Biểu thức, toán tử, khoảng trắng 19 2.3 Nhập / xuất liệu .23 2.4 Các cấu trúc điều khiển 24 2.4.1 Câu lệnh lựa chọn if 24 2.4.2 Câu lệnh lựa chọn Case 25 2.4.3 Cấu trúc lặp for 26 2.4.4 Cấu trúc lặp while 27 2.4.5 Cấu trúc lặp do…while 27 2.5 Mảng 28 2.5.1 Mảng chiều 28 2.5.2 Câu lệnh foreach 29 2.5.3 Mảng đa chiều .29 2.7 Hàm cách truyền tham số 34 2.8 Xử lý ngoại lệ .38 2.7.1 Phát sinh bắt giữ ngoại lệ 39 2.7.2 Những đối tượng ngoại lệ .44 Chương 3: Lập trình hướng đối tượng C# 46 3.1 Xây dựng lớp – Đối tượng 46 3.1.1 Định nghĩa lớp .46 3.1.2 Tạo đối tượng 49 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện 3.1.3 Sử dụng thành viên static 53 3.1.4 Nạp chồng .54 3.2 Kế thừa - Đa hình 54 3.2.1 Sự kế thừa 54 3.2.2 Đa hình 58 3.2.3 Lớp trừu tượng, lớp cô lập, giao diện 62 3.3 Các lớp sở NET 67 3.3.1 System.Object .67 3.3.2 Xử lý mảng 71 3.3.3 Xử lý chuỗi 72 3.3.4 Biểu thức quy ( Regular Expression) 83 3.3.5 Nhóm đối tượng 88 3.3.6 Dictionaries 94 Chương 4: Lập trình winform .104 4.1 Tìm hiểu điều khiển 104 4.1.1 Form 106 4.1.3 Nút – Button 109 4.1.4 Nhãn – Label .109 4.1.5 ToolTip 109 4.2 Một số điều khiển khác 110 4.2.1 Hộp đánh dấu – CheckBox 110 4.2.2 Nút tuỳ chọn – RadioButton .110 4.2.3 Nhóm – GroupBox 110 4.2.4 Hộp danh sách – ListBox 111 4.2.5 Hộp lựa chọn – ComboBox .112 4.2.6 Điều khiển Panel 112 4.2.7 Điều khiển PictureBox 112 4.2.8 Điều khiển Timer 113 4.2.9 ErrorProvider ( ) 113 4.3 Các hộp thoại thông dụng 113 4.3.1 Hộp hội thoại Open File 113 4.3.2 Hộp thoại SaveFile luồng FileStream 115 4.3.3 Hộp thoại Color 116 4.3.4 Hộp thoại Font 117 4.4 Menu 118 4.4.1 Menu – MenuStrip 118 4.4.2 Popup menu – ContextMenuStrip .119 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện Chương 5: Lập trình sở liệu .121 5.1 Hệ quản trị sở liệu MS SQL Server 2008 121 5.1.1 Tổng quan SQL Server 2008 121 5.1.2 SQL Server Management Studio 122 5.1.3 Tạo sở liệu (database) .123 5.1.3 Truy vấn liệu 128 5.2 Kết nối CS L 131 5.2.1 Giới thiệu A O.NET .131 5.2.2 Kết nối 133 5.3 Các đối tượng hiển thị xử lý liệu 134 5.3.1 DataSet 134 5.3.2 Xây dựng lớp CS L dùng chung 137 5.4 Thiết kế báo cáo 142 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện Chương 1: Tổng quan 1.1 Tổng quan Microsoft Net 1.1.1 Nguồn gốc Microsft Net NET Framework tảng lập trình tập hợp thư viện lập trình cài thêm có sẵn hệ điều hành Windows hãng Microsoft Nó cung cấp giải pháp thiết yếu cho yêu cầu thông thường chương trình điện toán lập trình giao diện người dùng, truy cập liệu, kết nối sở liệu, ứng dụng web, giải thuật số học giao tiếp mạng Ngoài ra, NET Framework quản lý việc thực thi chương trình viết dựa NET Framework người dùng cần phải cài NET Framework để chạy chương trình viết NET Các phiên net NET framework 1.0 – 2002 Ngày 12/2/2002 đánh dấu bước quan trọng “cuộc đời” NET Framework, phiên 1.0 với Visual Studio.NET 2002 thức mắt Chính NET Framework 1.0 điểm nhấn đáng ý làm cho Visual Studio NET 2002 khác biệt hẳn với Visual Studio 6.0 phát hành năm 1998 Lần đầu tiên, Microsoft giới thiệu “lập trình hợp nhất”, với việc lấy NET Framework làm tảng .NET framework 1.1 – 2003 Một năm sau ngày NET Framework 1.0 đời, ngày 24/4/2003, Microsoft có cập nhật 1.1 mắt với Visual Studio.NET 2003 Không có nhiều nâng cấp đáng ý lần mắt này, đáng kể đời NET Compact Framework, phiên thu gọn NET Framework cho thiết bị di động Điều đáng tiếc có tảng tốt, với hỗ trợ mạnh mẽ từ Microsoft, nay, NET Compact Framework chưa phát triển “lẽ phải thế” Hiện số thiết bị di động chạy Windows Mobile/Windows Phone khiêm tốn so với hệ điều hành (HĐH) lại .NET Framework 1.1 mở “truyền thống” kể từ đây, HĐH Windows cài đặt sẵn phiên NET Framework Windows Server 2003 tiên phong với phiên 1.1, sau Windows Vista với NET 3.0, gần Windows 7/Server 2008 với NET 3.5 SP1 .NET framework 2.0 – 2005 Microsoft đến năm để phát triển NET Framework 2.0 Visual Studio 2005, thời gian bỏ thật đáng giá Tháng 11/2005, hai sản phẩm mắt với hàng loạt tính mới, đáng kể việc hỗ trợ hoàn toàn cho tính toán 64-bit, NET Micro Framework, bổ sung nâng cấp nhiều control Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện ASP.NET đặc biệt hỗ trợ Generics .NET 2.0 hoàn toàn khác biệt so với phiên trước Generic cho phép định kiểu an toàn (type safety) Chúng cho phép ta tạo cấu trúc liệu mà không cần phải xác định kiểu liệu Tuy nhiên cấu trúc liệu sử dụng, trình biên dịch phải đảm bảo kiểu liệu sử dụng với kiểu an toàn Generic tương đương vơi Template C++ nhiên việc sử dụng Generic NET dễ dàng nhiều so với Template Phiên 1.0 1.1 NET Framework không hỗ trợ generics Thay vào đó, lập trình viên sử dụng lớp Object với tham số thành viên phải chuyển đổi tới lớp khác dựa lớp Object Generics mang đến hai tính cải tiến đáng kể việc sử dụng lớp Object: Giảm bớt lỗi vận hành (Reduced run-time errors), Hiệu suất cải thiện (Improved performance) .NET framework 3.5 – 2008 Nếu phiên trước đó, NET Framwork gắn liền với phiên Visual Studio đó, thì.NET Framework 3.5 “phá” truyền thống mắt với hệ điều hành Windows Vista vào cuối năm 2006 Ba “điểm nhấn” lần nâng cấp thành phần kỳ vọng thay Winform – Windows Presentation Foundation – WPF, Windows Communitcation Foundation – WCF, Windows Workflow Foundation – WF, Windows Card Space .NET Framework 3.5 phiên hoàn toàn, thực tế nâng cấp NET 2.0, hay nâng cấp cho thư viện NET 2.0 Chính Visual Studio “đi kèm”, mà NET 3.5 đành phải “ký gửi” vào Visual Studio 2005 với công cụ mở rộng Người dùng phải đợi đến tháng 11 năm 2007 sử dụng phiên Visual Studio hỗ trợ đầy đủ toàn diện cho NET 3.5, LINQ [LINQ: Language Integrated Query - thư viện mở rộng cho ngôn ngữ lập trình C# Visual Basic.NET (có thể mở rộng cho ngôn ngữ khác) cung cấp khả truy vấn trực tiếp liệu đối tượng, CSDL XML] phần bật đáng ý NET 3.5 .NET framework 4.0 – 2010 Ngày 12/4/2010 Microsoft lại nâng cấp NET Framework Visual Studio Đây phiên sau NET 2.0 kể từ 2005, có CLR hoàn toàn mới: CLR 4.0 Cũng cần nhắc lại NET 3.0 3.5 sử dụng CLR 2.0, CLR 3.0 Việc Microsoft chuyển thẳng lên 4.0 không để “đồng bộ” phiên bản, mà nhằm khẳng định bước tiến lớn Các tính cải tiến NET Framework là: Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện • Application Compatibility and eployment (Khả tương thích ứng dụng triển khai) • Core New Features and Improvements (Các tính cải tiến phần nhân) • Managed Extensibility Framework (Quản lý mở rộng Framework) • Parallel Computing (Điện toán song song) • Networking • Web • Client • ata • Windows Communication Foundation (WCF) • Windows Workflow Foundation (WF) 1.1.2 Microsoft Net NET Framework thiết kế đầy đủ để đáp ứng theo quan điểm sau: - Để cung cấp môi trường lập trình hướng đối tượng vững chắc, mã nguồn đối tượng lưu trữ thực thi cách cục Thực thi cục phân tán Internet, thực thi từ xa - Để cung cấp môi trường thực thi mã nguồn mà tối thiểu việc đóng gói phần mềm tranh chấp phiên - Để cung cấp môi trường thực thi mã nguồn mà đảm bảo việc thực thi an toàn mã nguồn, bao gồm việc mã nguồn tạo hãng thứ ba hay - Để làm cho người phát triển có kinh nghiệm vững nắm vững nhiều kiểu ứng dụng khác nhau, từ ứng dụng Windows đến ứng dụng dựa web - Để xây dựng tất thông tin dựa tiêu chuẩn công nghiệp để đảm bảo mã nguồn NET tích hợp với mã nguồn khác Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện Các thành phần NET Framework Common Language Runtime (CLR) CLR thực quản lý nhớ, quản lý thực thi tiểu trình, thực thi mã nguồn, xác nhận mã nguồn an toàn, biên bịch dịch vụ hệ thống khác Những đặc tính tảng cho mã nguồn quản lý chạy CLR Do trọng đến bảo mật, thành phần quản lý cấp mức độ quyền hạn khác nhau, phụ thuộc vào nhiều yếu tố nguyên thủy chúng như: liên quan đến Internet, hệ thống mạng nhà máy, hay máy tính cục Điều có nghĩa rằng, thành phần quản lý có hay quyền thực thao tác truy cập tập tin, thao tác truy cập registry, hay chức nhạy cảm khác CLR thúc đẩy mã nguồn thực việc truy cập bảo mật Ví dụ, người sử dụng giới hạn việc thực thi nhúng vào trang web chạy hoạt hình hình hay hát nhạc, truy cập liệu riêng tư, tập tin hệ thống, hay truy cập mạng o đó, đặc tính bảo mật CLR cho phép phần mềm đóng gói Inernet có nhiều đặc tính mà không ảnh hưởng đến việc bảo mật hệ thống CLR thúc đẩy cho mã nguồn thực thi mạnh mẽ việc thực thi mã nguồn xác xác nhận mã nguồn Nền tảng việc thực Common Type System (CTS) CTS đảm bảo mã nguồn quản lý tự mô tả (self - describing) Sự khác Microsoft trình biên dịch ngôn ngữ hãng thứ ba việc tạo mã nguồn quản lý thích hợp với CTS Điều mã nguồn quản lý sử dụng kiểu quản lý Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện khác thể hiện, thúc đẩy nghiêm ngặt việc sử dụng kiểu liệu xác an toàn Thêm vào đó, môi trường quản lý runtime thực việc tự động xử lý layout đối tượng quản lý tham chiếu đến đối tượng, giải phóng chúng chúng không sử dụng Việc quản lý nhớ tự động giải hai lỗi chung ứng dụng: thiếu nhớ tham chiếu nhớ không hợp lệ Trong runtime thiết kế cho phần mềm tương lai, hỗ trợ cho phân mềm ngày trước Khả hoạt động qua lại mã nguồn quản lý mã nguồn không quản lý cho phép người phát triển tiếp tục sử dụng thành phần cần thiết COM DLL Rutime thiết kế để cải tiến hiệu suất thực Mặc dù CLR cung cấp nhiều tiêu chuẩn dịch vụ runtime, mã nguồn quản lý không dịch Có đặc tính gọi Just-in-Time (JIT) biên dịch tất mã nguồn quản lý vào ngôn ngữ máy hệ thống vào lúc mà thực thi Khi đó, trình quản lý nhớ xóa bỏ phân mảnh nhớ gia tăng tham chiếu nhớ cục bộ, kết gia tăng hiệu thực thi Thư viện lớp NET Framework Thư viện lớp NET Framework tập hợp kiểu liệu dùng lại kết hợp chặt chẽ với Common Language Runtime Thư viện lớp hướng đối tượng cung cấp kiểu liệu mà mã nguồn quản lý dẫn xuất Điều không làm cho kiểu liệu NET Framework dễ sử dụng mà làm giảm thời gian liên quan đến việc học đặc tính NET Framework Thêm vào đó, thành phần hãng thứ ba tích hợp với lớp trong.NET Framework Cũng mong đợi người phát triển với thư viện lớp hướng đối tượng, kiểu liệu NET Framework cho phép người phát triển thiết lập nhiều mức độ thông dụng việc lập trình, bao gồm nhiệm vụ như: quản lý chuỗi, thu thập hay chọn lọc liệu, kết nối với cở liệu, truy cập tập tin Ngoài nhiệm vụ thông dụng Thư viện lớp đưa vào kiểu liệu để hỗ trợ cho kịch phát triển chuyên biệt khác Ví dụ người phát triển sử dụng NET Framework để phát triển kiểu ứng dụng dịch vụ sau: - Ứng dụng Console - Ứng dụng giao diện GUI Windows (WindowsForms) - Ứng dụng ASP.NET - Dịch vụ XMLWeb - Dịch vụ Windows Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện Trong lớp Windows Forms cung cấp tập hợp lớn kiểu liệu nhằm làm đơn giản việc phát triển ứng dụng GUI chạy Windows Còn viết ứng dụng ASP.NET sử dụng lớp WebForms thư viện NET Framework 1.2 Ngôn ngữ C# C# nhiều ngôn ngữ lập trình hỗ trợ NET Framework (như C++, Java,VB…) Ngôn ngữ xây dựng kiến trúc Anders Hejlsberg, người viết nên trình biên dịch Pascal có nhiều đóng góp cho elphi Java Chính dù mang họ nhà C C# ngôn ngữ hướng đối tượng đại dễ học, chịu ảnh hưởng học hỏi nhiều tính ưu việt từ Java, C++ ngôn ngữ khác Nếu bạn làm quen với Java đến máy ảo Java (JVM) tiếng, đừng nghĩ Net Framework máy ảo thực tế khung không cài đặt kỹ thuật máy ảo (ứng dụng viết java chạy JVM) Ứng dụng NET thực biên dich chạy mức mã máy, tương tự ứng dụng quen thuộc viết C, hay VB Ngôn ngữ C# đơn giản, khoảng 80 từ khóa mười kiểu liệu xây dựng sẵn Tuy nhiên, ngôn ngữ C# lại có ý nghĩa cao thực thi khái niệm lập trình đại C# bao gồm tất hỗ trợ cho cấu trúc, thành phần component, lập trình hướng đối tượng Những tính chất diện ngôn ngữ lập trình đại Và ngôn ngữ C# hội đủ điều kiện vậy, xây dựng tảng hai ngôn ngữ mạnh C++ Java 1.2.1 Tại chọn ngôn ngữ C# Ngôn ngữ C# ngôn ngữ dẫn xuất từ C C++, tạo từ tảng phát triển Microsoft bắt đầu với công việc C C++ thêm vào đặc tính để làm cho ngôn ngữ dễ sử dụng Nhiều số đặc tính giống với đặc tính có ngôn ngữ Java Không dừng lại đó, Microsoft đưa số mục đích xây dựng ngôn ngữ Những mục đích tóm tắt sau: - C# ngôn ngữ đơn giản - C# ngôn ngữ đại - C# ngôn ngữ hướng đối tượng - C# ngôn ngữ mạnh mẽ mềm dẻo - C# ngôn ngữ có từkhóa - C# trở nên phổ biến C# ngôn ngữ đơn giản 10 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện b Lọc Dataset ữ liệu từ table sở liệu lất toàn đổ vào ataset, sau tiến hành lọc dòng liệu cần thiết Ví dụ sau mô tả cách thực private void button4_Click(object sender, EventArgs e) { string connectionstring = "PROVIDER=SQLOLEDB; server=(local);uid=_net;pwd=;database=_NET"; OleDbConnection conObj = new OleDbConnection(connectionstring); conObj.Open(); OleDbCommand cmd = new OleDbCommand("select * from books",conObj); OleDbDataAdapter da = new OleDbDataAdapter(cmd); DataSet ds = new DataSet(); da.Fill(ds, "books"); MessageBox.Show( ds.Tables["books"].Rows.Count.ToString()); // filter data DataView dv = new DataView(ds.Tables["books"]); dv.RowFilter = "fprice>20000"; dv.Sort = "fprice DESC"; MessageBox.Show(dv.Table.Rows.Count.ToString()); conObj.Close(); } c Thêm, cập nhật, xóa liệu sở liệu Thêm liệu vào sở liệu string connectionstring = "PROVIDER=SQLOLEDB; server=(local);uid=_net;pwd=;database=_NET"; OleDbConnection conObj = new OleDbConnection(connectionstring); conObj.Open(); OleDbCommand cmd = new OleDbCommand("insert books values(?,?,?,?)", conObj); cmd.CommandType = CommandType.Text; cmd.Parameters.AddWithValue(“@inxb", 2);// Nha xuat ban tre cmd.Parameters.AddWithValue(“@vmasach", "MS0002"); cmd.Parameters.AddWithValue(“@vtensach", "Lập trình NET cho sống"); cmd.Parameters.AddWithValue(“@fgia", 75000); cmd.ExecuteNonQuery(); 136 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện MessageBox.Show("Đã thêm sách vào CSDL"); conObj.Close(); private void button7_Click(object sender, EventArgs e) { string connectionstring = "PROVIDER=SQLOLEDB; server=(local);uid=_net;pwd=;database=_NET"; OleDbConnection conObj = new OleDbConnection(connectionstring); conObj.Open(); OleDbCommand cmd = new OleDbCommand("update books set vtensach=?,fgia=? where vmasach=?",conObj); cmd.CommandType = CommandType.Text; cmd.Parameters.AddWithValue(“@vtensach", ".NET for Real Life"); cmd.Parameters.AddWithValue(“@fgia", 85000); cmd.Parameters.AddWithValue(“@vmasach", "MS0002"); cmd.ExecuteNonQuery(); MessageBox.Show("Đã sửa đổi nội dung sách CSDL"); conObj.Close(); } 5.3.2 Xây dựng lớp CSDL dùng chung Khi thao tác với CS L, việc tạo kết nối, mở kết nối, thực câu truy vấn liệu, … đóng kết nối thực nhiêu lần, Sẽ tốt thời gian lập lập lại trình Chúng ta xây dựng lớp chuyên biệt để thực việc giao tiếp với CS L, người lập trình công thực lại bước thao tác với đối tượng Connection, ataAdapter… cuối giúp giảm thiểu thời gian cho việc xây dựng ứng dụng Xây dựng lớp giao tiếp với CSDL – DBClass Mã lệnh lớp BClass sau using System; using System.Data; using System.Data.OleDb; public class OleDBClass { static string strConStr = ""; public static string ConnectingString { get 137 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện { if (!strConStr.Equals("")) return strConStr; else return null; } set { strConStr = value; } } public static OleDbConnection GetConnection() { OleDbConnection = new OleDbConnection(strConStr); con.Open(); return con; } public static DataTable GetData(OleDbCommand cmd) { try { if (cmd.Connection != null) { using (DataSet ds = new DataSet()) { using (OleDbDataAdapter da = new OleDbDataAdapter()) { da.SelectCommand = cmd; da.Fill(ds); return ds.Tables[0]; } } } else { using (OleDbConnection conn = GetConnection()) { 138 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện using (DataSet ds = new DataSet()) { using (OleDbDataAdapter da = new OleDbDataAdapter()) { da.SelectCommand = cmd; da.SelectCommand.Connection = conn; da.Fill(ds); return ds.Tables[0]; } } } } } finally { } } public static OleDbDataReader GetReadOnlyData(OleDbCommand cmd) { try { if (cmd.Connection != null) { return cmd.ExecuteReader(); } else { using (OleDbConnection conn = GetConnection()) { cmd.Connection = conn; datareader = cmd.ExecuteReader(); return cmd.ExecuteReader(); } } } finally {} } 139 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện public static DataSet GetDsData(OleDbCommand cmd) { try { if (cmd.Connection != null) { using (DataSet ds = new DataSet()) { using (OleDbDataAdapter da = new OleDbDataAdapter()) { da.SelectCommand = cmd; da.Fill(ds); return ds; } } } else { using (OleDbConnection conn = GetConnection()) { using (DataSet ds = new DataSet()) { using (OleDbDataAdapter da = new OleDbDataAdapter()) { da.SelectCommand = cmd; da.SelectCommand.Connection = conn; da.Fill(ds); return ds; } } } } } finally { } } public static DataTable GetData(string sql) 140 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện { try { using (OleDbConnection conn = GetConnection()) { using (OleDbCommand cmd = conn.CreateCommand()) { cmd.CommandType = CommandType.Text; cmd.CommandText = sql; using (DataSet ds = new DataSet()); { using (OleDbDataAdapter da = new OleDbDataAdapter()) { da.SelectCommand = cmd; da.SelectCommand.Connection = conn; da.Fill(ds); return ds.Tables[0]; } } } } } finally {} } public static void ExecuteNonQuery(OleDbCommand cmd) { try { using (OleDbConnection conn = GetConnection()) { cmd.Connection = conn; cmd.ExecuteNonQuery(); } } finally {} } 141 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện public static object ExecuteScalar(OleDbCommand cmd) { try { using (OleDbConnection conn = GetConnection()) { cmd.Connection = conn; return cmd.ExecuteScalar(); } } finally { } } } Sử dụng lớp giao tiếp với CSDL - DBClass Việc sử dụng lớp CS L Sau mã lệnh mẫu để sử dụng DBClass.ConnectingString = "PROVIDER=SQLOLEDB; server=(local);uid=_net;pwd=;database=_NET"; // việc gọi câu truy vấn đơn giản việc gọi hàm lớp DBClass DataTable dt = DBClass.GetData("select * from items"); Chúng ta thấy việc thực câu truy vấn liệu từ bảng items trở nên đơn giản hết Không cần phải mở kết nối Connection, sử dụng ataAdapter… bạn có liệu từ bảng items Nói cho đưa công doạn vào lớp Ole BClass quan tâm tới mục đích sử dụng câu truy vấn mà không nhiều mã lệnh để thực bước chuẩn bị 5.4 Thiết kế báo cáo Crystal Reports for Visual Studio NET công cụ báo cáo chuẩn dành cho Visual Studio.NET Bạn tiếp quản báo cáo Web Windows, phân bổ chúng dạng dịch vụ Web server Mục trình bày bước cách sinh báo cáo từ nguồn liệu Trước tiên, bạn tạo dự án ứng dụng Windows với tên CrystalExample Để hiển thị Crystal Report, bạn cần thực hai bước chính: thứ xây dựng báo cáo, thứ hai thêm điều kiểm CrystalReportViewer vào form để trình bày báo cáo 142 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện Việc xây dựng báo cáo mô tả 11 bước nhỏ đây: Từ trình đơn IDE, chọn Project | Add New Item chọn Crystal Report Nhắp Open Crystal Report Wizard nhắc ta chọn kiểu báo cáo cần xây dựng Giữ nguyên báo cáo chuẩn mặc định, nhắp OK Crystal Report Wizard hiển thị hộp thoại Standard Report Expert Nhắp vào dấu cộng kế thư mục OLE DB (ADO) hộp danh sách Available Data Sources 143 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện Bạn thấy hộp thoại OLE DB (ADO) Chọn Microsoft OLE DBProvider for SQL Server, nhắp Next Kế tiếp, cần báo với trình thuật sĩ sở liệu kết nối Chọn sở liệu Northwind Nhắp Next 144 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện Crystal Report Wizard hiển thị hộp thoại Advanced Information Chúng ta không cần thay đổi thông tin cho ví dụ này, nhắp Finish Trong cửa sổ Standard Report Expert, chọn bảng Categories Products cho báo cáo Nhắp Next 145 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện Trong thẻ Links hộp thoại Standard Report Expert, giữ nguyên mặc định hình Bạn thấy trình thuật sĩ ánh xạ khóa Categories đến khóa ngoại Products Nhắp Next để hiển thị thẻ Fields Từ bảng Categories, chọn CategoryName Description Từ bảng Products, chọn ProductName, QuantityPerUnit, UnitPrice, UnitsInStock (xem h.nh 10.23) Nhắp Next để hiển thị thẻ Group 146 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện Chọn CategoryName ProductName để phân nhóm 10 Nhắp Next nhiều lần để chấp nhận thiết lập mặc định cho thẻ Total, Top N, Chart, Select Khi đến thẻ cuối (thẻ Style), g tiêu đề Category - Product Report (xem h.nh 10.25) 147 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện 11 Nhắp Finish File CrystalReport1.rpt (xem h.nh 10.26) thêm vào dự án Chúng ta xây dựng xong báo cáo Bước thứ hai thiết lập chế để xem báo cáo Bước dễ dàng Bạn h.y kéo điều kiểm CrystalReportViewer từ hộp công cụ vào form mặc định 148 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện Nhắp phải vào CrystalReportViewer, chọn Properties Tìm thuộc tính Dock chọn Fill Tùy chọn khiến CrystalReportViewer lấp đầy vùng client form Kế tiếp, tìm thuộc tính ReportSource, nhắp Browse Chọn file CrystalReport1.rpt mà vừa xây dựng Bây giờ, bạn chạy chương trình để xem kết 149 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện 150 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin Truyền thông [...]... hiện> Ví dụ for (int i = 0; i < 30; i++) { if (i %10 ==0) { Console.WriteLine(“{0} ”,i); } else { Console.Write(“{0} ”,i); } } Kết quả: 26 Bộ môn Truyền thông đa phương tiện – Trường Đại học Công nghệ thông tin và Truyền thông Bài giảng Ngôn ngữ lập trình ứng dụng – Ngành Truyền thông đa phương tiện 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 2.4.4 Cấu trúc lặp while... false Giả sử ta có value1 = 10 0 và value2 = 50 Tến toán tử Kí hiệu Biểu thức so sánh Kết quả so sánh So sánh bằng == value1 == 10 0 value1 == 50 true false Không bằng != value2 != 10 0 value2 != 90 false true Lớn hơn > value1 > value2 true value2 > value1 false Lớn hơn hay bằng >= value2 >= 50 true Nhỏ hơn < value1 < value2 value2 < value1 false true Nhỏ hơn hay bằng

Ngày đăng: 09/10/2016, 08:53

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan