intTypePromotion=1
ADSENSE

Bài giảng Lập trình hướng đối tượng - Chương 7: Language Integrated Query (LINQ)

Chia sẻ: Zcsdf Zcsdf | Ngày: | Loại File: PPT | Số trang:30

120
lượt xem
21
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Mục tiêu của chương 7 Language Integrated Query (LINQ)nằm trong bài giảng Lập trình hướng đối tượng nhằm giới thiệu LINQ, LINQ to Object, LINQ to XML, LINQ to ADO. NET. Language Integrated Query (LINQ) là ngôn ngữ truy vấn hợp nhất trên các loại dữ liệu khác nhau.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Lập trình hướng đối tượng - Chương 7: Language Integrated Query (LINQ)

  1. LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG 2 Language Integrated Query (LINQ)
  2. Nội dung  Giới thiệu LINQ  LINQ to Object  LINQ to XML  LINQ to ADO.NET
  3. Giới thiệu LINQ using System; using System.Collections.Generic; namespace Demo01 { class Program { static void Main(string[] args) { string[]greetings={"hello world","hello LINQ","hello Apress" }; List result = new List(); foreach (string greeting in greetings) { if (greeting.EndsWith("LINQ")) { result.Add(greeting); } } foreach (string item in result) { Console.WriteLine(item); } Console.ReadLine(); } } } Trước khi có LINQ
  4. Giới thiệu LINQ using System; using System.Linq; namespace Demo01 { class Program { static void Main(string[] args) { string[]greetings = {"hello world", "hello LINQ", "hello Apress" }; var items = from s in greetings where s.EndsWith("LINQ") select s; foreach (var item in items) Console.WriteLine(item); } } } Khi có LINQ
  5. Giới thiệu LINQ  Language Integrated Query (LINQ) là ngôn ngữ truy vấn hợp nhất trên các loại dữ liệu khác nhau.  Với LINQ, bạn có thể truy vấn nhiều nguồn dữ liệu khác nhau trong C#: đối tượng (object), cơ sở dữ liệu SQL, tài liệu XML, mô hình dữ liệu thực thể (entity data model).  Đưa ra khả năng lập trình mới trong .NET - Giải pháp lập trình hợp nhất
  6. Giới thiệu LINQ VB C# Others… .NET Language­Integrated Query LINQ enabled data sources LINQ enabled ADO.NET LINQ LINQ LINQ LINQ LINQ To Objects To Datasets To SQL To Entities To XML                Objects Relational XML LINQ provides one programming model for all types of data (objects, SQL, XML,
  7. Giới thiệu LINQ  Tất cả các thao tác truy vấn LINQ gồm 3 hành động chính:  Lấy nguồn dữ liệu  Tạo truy vấn  Thực thi truy vấn
  8. LINQ to Object Sử dụng LINQ để truy vấn tập hợp các đối tượng dưới dạng IEnumerable hoặc IEnumerable Ví dụ:  int[ ] numbers = { 5, 4, 1, 3, 9, 8, 6, 7, 2, 0 };  List list;  string[] str = { "Visual Studio 2008", "LINQ", "WCF", "WWF", "WPF"};
  9. LINQ to Object static void Main(string[] args) { int[ ] numbers = { 5, 4, 1, 3, 9, 8, 6, 7, 2, 0 }; var lowNums = from n in numbers where n < 5 select n; Console.WriteLine("Numbers < 5:"); foreach (var x in lowNums){ Console.WriteLine(x); } }
  10. LINQ to Object static void Main(string[] args) { string[] names = { "Alonso", "Zheng", "Smith", "Jones", "Smythe", "Small", "Ruiz", "Hsieh", "Jorgenson", "Ilyich", "Singh", "Samba", "Fatimah" }; var queryResults = from n in names where n.StartsWith("S") select n; foreach (var item in queryResults) { Console.WriteLine(item); } }
  11. LINQ to Object static void Main(string[] args) { List customers = new List { new Customer { ID="A", City="New York", Country="USA", Region="North America", Sales=9999 }, new Customer { ID="B", City="Mumbai", Country="India", Region="Asia", Sales=8888 }, new Customer { ID="C", City="Karachi", Country="Pakistan", Region="Asia", Sales=7777 }}; var queryResults = from c in customers where c.Region == "Asia" select c; foreach (Customer c in queryResults) { Console.WriteLine(c); } }
  12. LINQ to XML 1 Sách lập trình C# 1 400000 2 Sách lập trình VB 1 50000
  13. LINQ to XML Cung cấp 1 công cụ mạnh trong việc truy vấn XML var sp = (from c in XElement.Load("SanPham.xml").Elements("SanPham") select new { MaSanPham = (string)c.Element("MaSanPham"), TenSanPham = (string)c.Element("TenSanPham"), MaLoai = (string)c.Element("MaLoai"), DonGia = (string)c.Element("DonGia"), }).ToArray(); dgSanPham.DataSource = sp;
  14. LINQ to DataSet LINQ to DataSet giúp truy vấn đối tượng Dataset dễ dàng và nhanh chóng string str = "server = localhost; database = QLBH; uid=sa; pwd = 123456"; SqlConnection con = new SqlConnection(str); con.Open(); SqlDataAdapter da = new SqlDataAdapter("Select * From SanPham", con); DataSet ds = new DataSet(); da.Fill(ds, "SanPham"); var sp = (from sanpham in ds.Tables["SanPham"].AsEnumerable() select new {MaSanPham=sanpham["MaSanPham"], TenSanPham=sanpham["TenSanPham"], MaLoai=sanpham["MaLoai"], DonGia=sanpham["DonGia"]}).ToArray(); dgSanPham.DataSource = sp; con.Close();
  15. LINQ to SQL LINQ to SQL là một phiên bản Object -Relational Mapping (ORM). Database DataContext Table Class View Class Column Field / Property Relationship Field / Property Stored Procedure Method
  16. LINQ to SQL – Lớp DataContext  Là một lớp kết nối đến CSDL  Chuyển câu truy vấn thành câu lệnh SQL  Đảm nhận việc tương tác với CSDL  Thay đổi CSDL thông qua phương thức SubmitChanges()
  17. LINQ to SQL Ví dụ:
  18. Cấu trúc LINQ to SQL from c in db.Customers db.Customers.Add(c1); c2.City = “Seattle"; where c.City == "London" select c.CompanyName Application db.Customers.Remove(c3); Enumerate Objects SubmitChanges() LINQ to SQL SQL Query Rows DML( Data Manipulation Language) or SProc or SProcs SELECT CompanyName INSERT INTO Customer … FROM Customer UPDATE Customer … WHERE City = 'London' DELETE FROM Customer …
  19. Ví dụ: Quản lý bán hàng
  20. Ví dụ: Quản lý bán hàng
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2