Bạn đang xem: Linq
không chỉ vận dụng mang đến tróc nã vấn SQL nhưng LinQ còn có khả năng hỗ trợ bên trên các nền tảng khác: XML, SQLite, Excel...

Để sút nhiệm vụ thao tác làm việc trên nhiều ngôn từ không giống nhau cùng nâng cấp năng suất lập trình sẵn, Microsoft vẫn cải tiến và phát triển giải pháp tích đúng theo dữ liệu cho .NET Framework có tên Điện thoại tư vấn là LINQ (Language Integrated Query), đấy là tlỗi viện mở rộng cho những ngôn từ lập trình C# và Visual Basic.NET (rất có thể không ngừng mở rộng cho các ngôn ngữ khác) cung cấp kỹ năng truy nã vấn trực tiếp tài liệu Object, CSDL cùng XML.
LINQ là một trong tập phù hợp các yếu tố mở rộng chất nhận được viết những câu truy vấn vấn dữ liệu tức thì trong một ngữ điệu thiết kế, nhỏng C# hoặc VB.NET. khi tạo thành một đối tượng LINQ thì Visual Studio đang tự động ra đời những lớp bao gồm các yếu tố tương ứng với CSDL của bọn họ. lúc ước ao tróc nã vấn, thao tác làm việc cùng với CSDL ta chỉ Việc Điện thoại tư vấn và tróc nã xuất các hàm, thủ tục tương xứng của LINQ cơ mà ko đề xuất quyên tâm cho các câu lệnh SQL thông thường.
Tóm lại LINQ Thành lập để sút công sức cho đa số quy trình đơn giản dễ dàng và “tầm thường chung” trước đây.
Điểm mạnh bạo (không kiên cố về độ dũng mạnh, cơ mà hay) của LINQ là “viết truy hỏi vấn đến tương đối nhiều những đối tượng người sử dụng dữ liệu”. Từ CSDL, XML Data Object … thậm chí là là viết truy vấn vấn cho một phát triển thành mảng đã tạo thành trước kia. Vì vậy mới bao gồm các có mang LinQ lớn Squốc lộ, LinQ to lớn XML, blo bla ….
Tuy nhiên đối với mô hình Entity (Entity Framework), LINQ gồm khuyết điểm là chậm và thiếu hụt đồng bộ (tiến bộ vớ bắt buộc hại điện).
Xem thêm: What Is The Meaning Of " Please Be Advised? ? Please Be Advised
Visual Studio 2008, hoặc những phiên phiên bản Express của chính nó là những bộ vẻ ngoài cải tiến và phát triển tiêu biểu vượt trội đến áp dụng dùng LINQ.
II. Sử dụng LinQ
![]() |
Câu lệnh SELECT trong SQL được tiến hành do LINQ |
Trong phần này tôi đã thực hiện 1 project thử nghiệm để chúng ta thấy được biện pháp thao tác làm việc với LINQ như vậy nào?!
DataBase là 1 trong những bảng tbTest với 2 trường: id (thứ hạng int, tự động hóa tăng - Identity) và Feild1 (vẻ bên ngoài nvarchar(50)).


DB.DBDataContext db = new DB.DBDataContext(); Có 2 thứ hạng tróc nã vấn dữ liệu:Query Syntaxvar abc = from p in db.tbTests where p.id > 10 select p;// Hoặc lựa chọn một số trườngvar abc = from p in db.tbTests where p.id > 10 select new p.id, p.Feild1 ;Method Syntaxvar xyz = db.tbTests.Where(p => p.id > 10).Select(p => new p.id, p.Feild1 );Câu truy hỏi vấn Squốc lộ tương ứngSELECT 3. Thêm, sửa, xóa tài liệu trải qua LinQ
Thêm dữ liệuDB.tbTest a = new DB.tbTest(); // Knhị báo đối tượng người sử dụng mớia.Feild1 = txtFeild1.Text; // id là quý hiếm auto tăng > ko phải nắm đổidb.tbTests.InsertOnSubmit(a); // Thêm đối tượng người tiêu dùng a vàodb.SubmitChanges(); // Lưu thế đổiSửa dữ liệuvar a = (from p in db.tbTests where p.id == int.Parse(txtId.Text) select p).FirstOrDefault();a.Feild1 = txtFeild1.Text;db.SubmitChanges();Xóa dữ liệuvar a = (from p in db.tbTests where p.id == int.Parse(txtId.Text) select p).FirstOrDefault();db.tbTests.DeleteOnSubmit(a);db.SubmitChanges();
Bindding là phương pháp tiện lợi nhằm biến đổi, update, thêm mới bản ghi sinh hoạt DataBase một cách dễ dàng trực quan, sử dụng LinQ.Giả sử ta thực hiện Bindding ở một bảng, bao gồm 2 cơ chế (đẳng cấp hiển thị) là GridView và Detail:Chế độ GridView: có 1 gridview nhằm hiển thị các bạn dạng ghi trong bảng, tương tự như như Lúc bọn họ chạy câu tầm nã vấn SELECT * trong SQLDetail: các Control có thể chấp nhận được đổi khác quý giá của bản ghi đang được lựa chọn nghỉ ngơi Gridview. Lúc click vào 1 hàng sống Gridview thì tài liệu của mặt hàng kia sẽ được điền tự động vào các Control này.
Trong chế độ Design form, Open sổ Data Sources, tại đây những bảng trong file DB.dbml (được chế tạo ra Khi khởi chế tác LinQ) sẽ tiến hành hiển thị, giúp chúng ta có thể kéo vào trong size của mìnhTạo Bindding bằng cách kéo thả
Sau Khi kéo những điều đó thì nó hình thành 1 đối tượng là tbTestBinddingSource, trên đây chính là đối tượng can hệ cùng với SQL, LinQ.
Xem thêm: Cách Tải Game Tom And Jerry : Chase Trên Android Và Ios Đơn Giản Nhất
// DataSource là một trong bảng bao gồm sẵntbTestBindingSource.DataSource = db.tbTests;// Datasource là 1 trong đối tượng người tiêu dùng IEnumrable rước từ truy tìm vấn LINQtbTestBindingSource.DataSource = result;quý khách hàng có thể kéo 1 BinddingNavigator nhằm triển khai những thao tác làm việc thêm, xóa dễ dàng dàng
khi đã có Bindding như vậy này rồi thì bài toán thêm sửa xóa cực kỳ đơn giản dễ dàng, ko cần code những, sau thời điểm thay đổi trên gridview, detail để lưu lại tất cả các chuyển đổi chỉ cầntbTestBindingSource.EndEdit();db.SubmitChanges();Các làm việc rất có thể làm với BinddingSourcetbTestBindingSource.RemoveCurrent(); // Xóa hàng hiện tại tại// Di chuyển trên gridviewtbTestBindingSource.MoveFirst();tbTestBindingSource.MoveLast();tbTestBindingSource.MoveNext();tbTestBindingSource.MovePrevious();tbTestBindingSource.Position = 5; // Xác xác định trí đến BinddingSau số thao tác biến đổi bên trên grid view, bạn có nhu cầu xem số mặt hàng thêm mới, sửa xóa??int insert = db.GetChangeSet().Inserts.Count;int update = db.GetChangeSet().Updates.Count;int delete = db.GetChangeSet().Deletes.Count;Tđam mê khảo project demo trêntrên trên đây.Các bạn có thể truy hỏi cậpliên kếtđể có thêm đọc tin, các thao tác cùng với LINQ.
Chuyên mục: Công Nghệ