Danh mục

Bài giảng LINQ to SQL - Lương Trần Hy Hiến

Số trang: 36      Loại file: pdf      Dung lượng: 881.38 KB      Lượt xem: 16      Lượt tải: 0    
10.10.2023

Hỗ trợ phí lưu trữ khi tải xuống: 7,000 VND Tải xuống file đầy đủ (36 trang) 0

Báo xấu

Xem trước 4 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài giảng LINQ to SQL của Lương Trần Hy Hiến trình bày về phương thức mở rộng; biểu thức Lambda; khởi tạo đối tượng; C# 3.0 Language Extensions; Query Comprehensions; Linq to SQL; loại CSDL LINQ to SQL hỗ trợ; thực hiện ánh xạ ORM; intro demo.
Nội dung trích xuất từ tài liệu:
Bài giảng LINQ to SQL - Lương Trần Hy HiếnLINQ TO SQLLương Trần Hy Hiến - hyhien@gmail.comPhương thức mở rộngBiểu thức Lambda (input parameters) => {executioncode} “goes into”Khởi tạo đối tượngHangHoa hh = new HangHoa();HangHoa hh = new HangHoa(1, “Bánh đậu”);HangHoa hh = new HangHoa{ MaHH = 1, TenHH = “Bánh đậu”};C# 3.0 Language Extensions var hanghoa = from c in dshanghoa where c.MaLoai == WA select new { c.TenHH, c.DonGia }; var hanghoa = dshanghoa .Where(c => c.MaLoai == WA) .Select(c => new { c.TenHH, c.DonGia }); Danh sách các từ khóaRestriction WhereProjection SelectOrdering OrderBy, OrderByDescending, ThenBy, ThenByDecendingGrouping GroupByQuantifiers Any, All, ContainsPartitioning Take, Skip, TakeWhile, SkipWhileSets Distinct, Union, Concat, Intersect, ExceptElements First, FirstOrDefault, Last, Single, ElementAtAggregation Count, Sum, Min, Max, AverageConversion ToArray, ToList, ToDictionary, ToLookup Query ComprehensionsProject Select Filter Where Test Any(), All()Join [ [ Left | Right ] Outer ] Join On Group Group By Aggregate Count(), Sum(), Min(), Max(), Avg()Partition Top Set Distinct, Union, Intersect, ExceptOrder Order By Các loại Linq to Object Linq to SQL Linq to XML Linq to SQL9  Là kỹ thuật ORM (Object Relation Mapping) của Microsoft dùng để ánh xạ quan hệ CSDL sang quan hệ đối tượng.  Giúp cho việc lập trình giao tiếp CSDL dễ dàng hơn.  Hỗ trợ những thao tác cơ sở dữ liệu: thêm, xóa, sửa, cập nhật.  Hỗ trợ transaction, view, stored procedureLINQ to SQL Mapping Database DataContext Table Class View Class Column Field / Property Relationship Field / Property Stored Procedure MethodCác bước thao tác Kết nối đến loại CSDL mà LINQ to SQL hỗ trợ Thực hiện ánh xạ ORM (tạo file .dbml). Ví dụ: TruongHoc.dbml Khởi tạo đối tượng CSDL đã ánh xạ (đối tượng ). Ví dụ: TruongHocDataContext Sử dụng đối tượng CSDL trên để thao tác CSDL - 11 -Loại CSDL LINQ to SQL hỗ trợ Chỉ hỗ trợ các loại CSDL sau:  Microsoft SQL Server  Microsoft SQL Server Compact (*.sdf)  Microsft SQL Server Database File (*.mdf) - 12 -Thực hiện ánh xạ ORM Tạo file TenCSDL.dbml Kéo tất cả các bảng vào cửa sổ Design Có thể kéo các View, Stored Procedure, Function vào cửa sổ Design Lưu ý khi đã thực hiện ánh xạ trong project sẽ xuất hiện file Web.config. Trong file này chứa chuỗi connectionstring. Khi đem ứng dụng qua máy khác chạy ta chỉ cần chỉnh sửa giá trị chuỗi connectionstring trong file này. - 13 -Accessing Data Today SqlConnection c = new SqlConnection(…); c.Open(); SqlCommand cmd = new SqlCommand( @SELECT c.TenHH, c.DonGia FROM HangHoa c WHERE c.MaLoai = @p0); cmd.Parameters.AddWithValue(@p0, 1); DataReader dr = c.Execute(cmd); while (dr.Read()) { string ten_hhh = dr.GetString(0); string gia = dr.GetString(1); } dr.Close();Accessing With LINQ to SQL public class Hoa { … } public class QLBanHang: DataContext { public Table HangHoas; … } QLBanHang db = new QLBanHang(…); var dshh = from c in db.HangHoas where c.MaLoai == 1 select new { c.TenHH, c.DonGia };INTRO DEMO Application Architecture With LINQ to SQLfrom c in db.HangHoas Application db.HangHoas.InsertOnSubmit(c1);where c.MaLoai == 1 c2.MaLoai = 2;select c.TenHH db.HangHoas.DeleteOnSubmit(c3); LINQ Query Objects SubmitChanges() LINQ to SQL SQL Query Rows DML or SProcsSELECT TenHH INSERT INTO HangHoa…FROM HangHoa UPDATE HangHoa …WHERE MaLoai = 1 DELETE FROM HangHoa … Lưu ývar query = from c in db.HangHoas where c.MaLoai == 1 select c.TenHH;var query = db.HangHoas.Where(c => c.MaLoai == 1).Select(c => c.TenHH);LinQ thực thi như thế nào? from c in dsHangHoa where c.MaLoai == “NO select new { c..TenHH, c.DonGia }; dsHangHoa .Where(c => c.MaLoai == “NO) .Select(c => new { c.TenHH, c.DonGia });Examples

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