protected void btnExecuteSqlCommandUpdate_Click(object sender, EventArgs e) { using (DienMayDbContext db = new DienMayDbContext()) { int kq = db.Database.ExecuteSqlCommand("Update SanPham Set Ten=@p0 Where SanPhamID=@p1", "Sản phẩm mới", 25); lblThongBao.Text = kq.ToString(); } }
protected void btnExecuteSqlCommandInsert_Click(object sender, EventArgs e) { using (DienMayDbContext db = new DienMayDbContext()) { db.Database.ExecuteSqlCommand("Insert Into ChungLoai(Ten,BiDanh) Values(@p0,@p1)", "Chủng loại mới", "Chung-loai-moi"); lblThongBao.Text = "Ghi thành công"; } }
protected void btnSqlQuery2_Click(object sender, EventArgs e) { using (DienMayDbContext db = new DienMayDbContext()) { gvKetQua.DataSource = db.SanPhams.SqlQuery("Select * From SanPham Where LoaiID = @p0", 19).ToList(); gvKetQua.DataBind(); } }
protected void btnSqlQuery1_Click(object sender, EventArgs e) { using (DienMayDbContext db = new DienMayDbContext()) { var items = db.ChungLoais.SqlQuery("Select * From ChungLoai").ToList(); gvKetQua.DataSource = items; gvKetQua.DataBind(); } }
// Khi Lazy Loading Enadled là False protected void Button1_Click(object sender, EventArgs e) { using (var db = new DienMayDbContext()) { List <SanPham> items = db.SanPhams .Include("Loai") .ToList(); } }
protected void Button3_Click(object sender, EventArgs e) { using (var db = new DienMayDbContext()) { // đọc thông tin của các sanpham co loai id =3 bao gom thong tin ve loai, chung loai List <SanPham> items = db.SanPhams .Where(p => p.LoaiID == 3) .Include(p => p.Loai) .Include(p => p.Loai.ChungLoai) .ToList(); } }
// Explicitly Loading // Khi Lazy Loading Enadled là False protected void Button1_Click(object sender, EventArgs e) { using (var db = new DienMayDbContext()) { var loai1 = db.Loais.Find(1); // Load chungloai liên quan đến loai db.Entry(loai1).Reference(p => p.ChungLoai).Load(); // Hoặc: var loai2 = db.Loais.Find(2); db.Entry(loai2).Reference("ChungLoai").Load(); } }
protected void Button4_Click(object sender, EventArgs e) { using (var db = new DienMayDbContext()) { // đọc thông tin của các sanpham co loai id =3 bao gom thong tin ve loai, chung loai SanPham items = db.SanPhams .Include(p => p.Loai) .SingleOrDefault(p => p.SanPhamID == 8); SanPham items2 = db.SanPhams .Where(p => p.SanPhamID == 8) .Include(p => p.Loai) .SingleOrDefault(); } }
protected void Button2_Click(object sender, EventArgs e) { using (var db = new DienMayDbContext()) { var loai1 = db.Loais.Find(1); // Load related entities db.Entry(loai1).Collection(p => p.SanPhams).Load(); // Load the SanPhams related to a given loai2 // using a string to specify the relationship var loai2 = db.Loais.Find(2); db.Entry(loai2).Collection("SanPhams").Load(); } }
protected void btnViDu1_Click(object sender, EventArgs e) {// Difference between Select and SelectMany in LINQ using (DienMayDbContext db = new DienMayDbContext()) { // Select: Trả về 2 tập hợp lồng nhau (phải dùng 2 vòng for để truy xuất) var ds1 = db.ChungLoais .Select(p => p.Loais) .ToList(); // SelectMany: Trả về 1 tập hợp var ds2 = db.ChungLoais .SelectMany(p => p.Loais) .ToList(); } }
protected void btnExecuteSqlCommandDelete_Click(object sender, EventArgs e) { using (DienMayDbContext db = new DienMayDbContext()) { try { int kq = db.Database.ExecuteSqlCommand("Delete From ChungLoai Where Ten like @p0", "Chủng loại mới%"); lblThongBao.Text = kq.ToString(); } catch (Exception ex) { lblThongBao.Text = ex.Message; } } }
protected void btnViDu7_Click(object sender, EventArgs e) { // Select // Tương tự Ví dụ 2, nhưng đảo thực thể truy vấn chính là Loais thay vì ChungLoais using (DienMayDbContext db = new DienMayDbContext()) { // Đọc thông tin gồm ChungLoaiID,TenChungLoai, TenLoai. // (chỉ những chủng loại có thông tin về loại) var items = db.Loais .Select(l => new { l.ChungLoaiID, TenChungLoai = l.ChungLoai.Ten, TenLoai = l.Ten }) .OrderBy(l => l.ChungLoaiID) .ToList(); gvwKetQua.DataSource = items; gvwKetQua.DataBind(); } }
protected void btnViDu6_Click(object sender, EventArgs e) { // Select // Giống Ví dụ 2, nhưng dùng Select sẽ trả về tập hợp con (lồng 2 tập hợp) using (DienMayDbContext db = new DienMayDbContext()) { var items = db.ChungLoais .Select(cl => cl.Loais .Select(l => new { cl.ChungLoaiID, TenChungLoai = cl.Ten, TenLoai = l.Ten })) .ToList(); //gvwKetQua.DataSource = items; //--> Error //gvwKetQua.DataBind(); } }
protected void btnViDu2_Click(object sender, EventArgs e) {// SelectMany: using (DienMayDbContext db = new DienMayDbContext()) { // Đọc thông tin gồm ChungLoaiID,TenChungLoai, TenLoai. // (Chỉ những chủng loại có thông tin về loại) var items = db.ChungLoais .SelectMany(cl => cl.Loais .Select(l => new { cl.ChungLoaiID, TenChungLoai = cl.Ten, TenLoai = l.Ten })) .OrderBy(k => k.ChungLoaiID) .ToList(); gvwKetQua.DataSource = items; gvwKetQua.DataBind(); } }
protected void btnViDu3_Click(object sender, EventArgs e) {// SelectMany: using (DienMayDbContext db = new DienMayDbContext()) { // Đọc thông tin gồm ChungLoaiID,TenChungLoai, TenLoai. // (Kể cả chủng loại chưa có thông tin về loại - DefaultIfEmpty) var items = db.ChungLoais .SelectMany(cl => cl.Loais .DefaultIfEmpty() .Select(l => new { cl.ChungLoaiID, TenChungLoai = cl.Ten, TenLoai = l == null ? "" : l.Ten })) .OrderBy(k => k.ChungLoaiID) .ToList(); gvwKetQua.DataSource = items; gvwKetQua.DataBind(); } }
protected void btnViDu5_Click(object sender, EventArgs e) { using (DienMayDbContext db = new DienMayDbContext()) { // Lấy các sản phẩm thuộc loại nokia có giá bán cao nhất. //int max = db.SanPhams // .Where(p => p.Loai.Ten.Contains("nokia")) // .Max(x => x.GiaBan); //var ds1 = db.SanPhams // .Where(p => p.Loai.Ten.Contains("nokia") && p.GiaBan == max) // .Select(p => new { TenSP = p.Ten, LoaiSP = p.Loai.Ten, p.SoLuong, p.GiaBan, p.MoTa }) // .ToList(); var ds2 = db.Loais .Where(l => l.Ten.Contains("nokia")) .SelectMany(l => l.SanPhams .Where(s => s.GiaBan == l.SanPhams.Max(x => x.GiaBan)) .Select(p => new { TenSP = p.Ten, LoaiSP = l.Ten, p.SoLuong, p.GiaBan, p.MoTa })) .ToList(); gvwKetQua.DataSource = ds2; gvwKetQua.DataBind(); } }
protected void Button5_Click(object sender, EventArgs e) { using (var db = new DienMayDbContext()) { Loai item = db.Loais .Include("ChungLoai") .Include("SanPhams") .Include("SanPhams.HoaDonChiTiets") .Include("SanPhams.HoaDonChiTiets.HoaDon") .SingleOrDefault(p => p.LoaiID == 1); string tenloai = item.Ten; string tenChungLoai = item.ChungLoai.Ten; int tongsp = item.SanPhams.Count; StringBuilder sb = new StringBuilder(); sb.AppendFormat("<h3>{0}</h3>", item.Ten); foreach (var sp in item.SanPhams) { sb.AppendFormat("{0}-{1}/br", sp.SanPhamID, sp.Ten); } lbKetQua.Text = sb.ToString(); literalKetQua.Text = sb.ToString(); } }