Danh mục

Bài giảng Phân tích thiết kế phần mềm LINQ - Ngô Ngọc Đăng Khoa

Số trang: 131      Loại file: pdf      Dung lượng: 3.31 MB      Lượt xem: 4      Lượt tải: 0    
Xem trước 10 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

LINQ là thư viện mở rộng cho các ngôn ngữ lập trình C# và Visual Basic.NET (có thể mở rộng cho các ngôn ngữ khác) cung cấp khả năng truy vấn trực tiếp dữ liệu Object, CSDL và XML. Để hiểu rõ hơn về phần mềm này mời các bạn tham khảo bài giảng Phân tích thiết kế phần mềm LINQ sau đây.
Nội dung trích xuất từ tài liệu:
Bài giảng Phân tích thiết kế phần mềm LINQ - Ngô Ngọc Đăng KhoaPhân tích thiết kế phần mềmLINQNgô Ngọc Đăng Khoa 1INTRODUCTION 2Intro• LINQ đọc là LINK, không phải LIN-QUEUE• LINQ: Language Integrated Query• LINQ cho phép developer thực hiện truy vấn trên nhiều dạng dữ liệu trong .NET – .NET Objects (List, Queue, Array, …) – Database (DLINQ) – XML (XLINQ) – Parallel LINQ (PLINQ) 3Intro DLINQ LINQ XLINQ PLINQ 4Intro• Có thể bổ sung provider để mở rộng các nguồn dữ liệu mà LINQ có thể truy vấn 5 C# VB Others… .NET Language Integrated QueryStandard DLinq XLinq QueryOperators (ADO.NET) (System.Xml) Objects XML Database 6LINQ TO OBJECTS 71st ExampleList list = new List() {1, 2, 3};var query = from n in list where n < 3 select n;foreach (var n in query) Console.WriteLine(n); 8.NET 3.0+ FeaturesImplicitly typed local variables var query = from n in list where n < 3 select n; Ienumerable query = from n in list where n < 3 select n; 9.NET 3.0+ FeaturesCollection Initializers List list = new List(); list.Add(1); list.Add(2); list.Add(3); List list = new List() {1, 2, 3}; 10.NET 3.0+ FeaturesDictionary Initializers Dictionary dic = new Dictionary(); dic.Add(1, “value1”); dic.Add(2, “value2”); dic.Add(3, “value3”); Dictionary dic = new Dictionary { {1, “value1”}, {2, “value2”} }; 11Query Syntax from n in list where n < 3 select n; foreach (int n in list) { if (n < 3) //xử lý n } 122nd ExampleTruy vấn trên đối tượng public class Customer { public string CustomerID { get; set; } public string ContactName { get; set; } public string City { get; set; } } 13.NET 3.0+ FeaturesAutomatic Properties string _data; public string Data { get { return _data; } set { _data = value; } } public string Data { get; set; } 142nd Example (cont)static List GetCustomers(){ return new List { new Customer { CustomerID = ALFKI, ContactName =Maria Anders, City = Berlin }, new Customer { CustomerID = ANATR, ContactName = AnaTrujillo, City = Mexico D.F. }, new Customer { CustomerID = ANTON, ContactName =Antonino Moreno, City = Mexico D.F. } };} 15.NET 3.0+ FeaturesObject Initializers class MyClass { public string Prop1 { get; set; } public string Prop2 { get; set; } } MyClass c = new MyClass { MyClass c = new MyClass(); Prop1 = “Value1”, c.Prop1 = “Value1”; Prop2 = “Value2” c.Prop2 = “Value2”; }; 162nd Example (cont)var query = from c in GetCustomers() where c.City == Mexico D.F.” //where c.City.StartWith(“A”) select new { City = c.City, ContactName = c.ContactName };foreach (var c in query){ //Xuất thông tin c} 17.NET 3.0+ FeaturesAnonymous Type var dude = new { Name = “Bob”, Age = 25 }; internal class AnonymousGeneratedTypeName { public string Name { get; set; } public int Age { get; set; } } AnonymousGeneratedTypeName dude = new AnonymousGeneratedTypeName {Name = “Bob”, Age = 25}; 18Query Syntax – letvar list = new List { 1,2,3,4,5,6,7,8,9 };var query = from n in list where n > 3 && n < 8 let g = n * 2 let newList = new List {1,2,3} from l in newList select new { l, r = g * l }; 19Query Syntax – let 20

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