Chào mừng đến với Diễn đàn lập trình - Cộng đồng lập trình.
Kết quả 1 đến 2 của 2
  1. #1
    Ngày tham gia
    Sep 2015
    Bài viết
    0

    Truy vấn và hiển thị hai hoặc nhiều bảng dữ liệu lên datagrid bằng LinQ

    Nhờ các anh chị giúp em vấn đề này với ạ!

    Em có 2 bảng dữ liệu là: GIAOVIEN(MaGV, HoTenGV, QueQuan, SoDT, HocHam), và bảng LOP(MaLop, TenLop, SiSo, MaGV). Trong đó thì trường LOP.MaGV với mục đích là hiển thị Giáo viên chủ nhiệm của lớp.

    Bây giờ em muốn hiển thị các thông tin: MaLop, TenLop, SiSo, HoTenGV lên datagridviews, sử dụng LinQ thì làm thế nào ạ? Em mới bước vào nghề cho nên còn hơi kém, mong các anh chị giúp đỡ! Em cảm ơn!

  2. #2
    Ngày tham gia
    Sep 2015
    Bài viết
    0
    bạn có thể tạo 1 Model chứa các property cần thiết và dùng LinQ để đưa dữ liệu vào đó. Ví dụ tạo 1 class tên là LopViewModel
    Mã:
    public class LopViewModel
    {
    public int MaLop {get;set;}
    public string TenLop {get;set;}
    public int SiSo {get;set;}
    public string HoTenGV {get;set;}
    }
    Và sử dụng LinQ để lấy ra danh sách. Với LinqToSql:
    Mã:
    var DanhSach = from l in db.Lop
                            join gv in db.GiaoVien on l.MaGV equals gv.MaGV
                            select new LopViewModel
                            {
                            MaLop = l.MaLop,
                            TenLop = l.TenLop,
                            SiSo = l.SiSo,
                            HoTenGV = gv.HoTenGV
                            }
    Hoặc với LinqToEntities:
    Mã:
    var DanhSach = db.Lop.Select(x => new LopViewModel
                                                {
                                                 MaLop = x.MaLop,
                                                 TenLop = x.TenLop,
                                                 SiSo = x.SiSo,
                                                 HoTenGV = x.GiaoVien.HoTenGV
                                                }

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •