02/10/2018, 00:02

Kết nối (thêm, xóa, sửa, tìm kiếm) Linq to Microsoft Sqlserver bằng C#

Hôm nay, mình xin hướng dẫn các bạn viết một ưng dụng thêm, xóa, sửa, tìm kiếm sử dụng Linq to Sql server trên ngôn ngữ C#. Có giao diện như hình bên dưới: + Đầu tiên: ta tạo database sinhvien với tên table tbl_sinhvien, gồm các field: masv, tensv, ...

Hôm nay, mình xin hướng dẫn các bạn viết một ưng dụng thêm, xóa, sửa, tìm kiếm sử dụng Linq to Sql server trên ngôn ngữ C#. Có giao diện như hình bên dưới:

+ Đầu tiên: ta tạo database sinhvien với tên table tbl_sinhvien, gồm các field: masv, tensv, khoa như hình dưới:

Tiếp đến, mình cần tạo một class Linq to Sql và đặt tên là data.dbml

tạo class linq to sqlserver trong vb.net

- Từ bên trái Server Explorer, ta tạo một dataset để kết nối với cơ sở dữ liệu sinh viên.

- Sau đó, ta mở class Data.dbml lên, và từ bên trái Server Explorer, ta kéo bảng tbl_sinhvien mà chúng ta cần thao tác lên class Data.dbml.

- Bây giờ ta mở class form1 ra và bắt đầu code: 

- Để insert ta sử dụng lệnh InsertOnSubmit()

- Để xóa ta sử dụng lệnh DeleteOnSubmit()

- sử dụng phương thức SubmitChanges() để thực hiện thay đổi dữ liệu.

Lưu ý: khi ta khai báo biến db as DataDataContext, trong chữ Data đầu tiên trong Datadatacontext chính là tên class linq to sql mà các bạn đặt. 

+ Đầu tiên, ta cần import thư viện linq vào sử dụng

using System.Linq;

- Tiếp đến, ta khai báo một đối tượng tb as tbl_sinhvien

tbl_sinhvien tb = new tbl_sinhvien();

- Tiếp đến ta bắt đầu viết sự kiện cho có nút: lưu, sửa, xóa và tìm kiếm.

- Sự kiện khi bấm vào nút lưu:

 private void btn_luu_Click(object sender, EventArgs e)
  {            
            DataDataContext db = new DataDataContext();
            tb.masv = txt_masv .Text;
            tb.tensv = txt_tensv .Text;
            tb.khoa = txt_khoa.Text;            
            db.tbl_sinhviens .InsertOnSubmit (tb);
            db.SubmitChanges();
            Form1_Load(sender, e);
 }  

- Tiếp đến ta viết sự kiện cho nút sửa: 

  private void btn_sua_Click(object sender, EventArgs e)
        {
            DataDataContext db = new DataDataContext();
            tb = db.tbl_sinhviens.Where(s => s.masv == txt_masv.Text).Single();
            tb.tensv = txt_tensv.Text;
            tb.khoa = txt_khoa.Text;
            db.SubmitChanges();
            Form1_Load(sender, e);
        }

- Sự kiện khi click vào nút xóa: 

private void btn_xoa_Click(object sender, EventArgs e)
        {
            DataDataContext db = new DataDataContext();
            tb = db.tbl_sinhviens.Where(s => s.masv == txt_masv.Text).Single();
            tb.tensv = txt_tensv.Text;
            tb.khoa = txt_khoa.Text;
            db.tbl_sinhviens.DeleteOnSubmit(tb);
            db.SubmitChanges();
            Form1_Load(sender, e);
        }

- Sự kiện khi gõ text vào ô tìm kiếm:


private void txt_timkiem_KeyUp(object sender, KeyEventArgs e)
        {
            DataDataContext db = new DataDataContext();
            var Lst = (from s in db.tbl_sinhviens  where s.masv.Contains (txt_timkiem.Text ) select s ).ToList();
            dataGridView1.DataSource = Lst;
            txt_masv.DataBindings.Clear();
            txt_tensv.DataBindings.Clear();
            txt_khoa.DataBindings.Clear();
            txt_masv.DataBindings.Add("text", Lst, "masv");
            txt_tensv.DataBindings.Add("text", Lst, "tensv");
            txt_khoa.DataBindings.Add("text", Lst, "khoa");
        }

Và cuối cùng, là sự kiện form_load để load database vào data gridview

  private void Form1_Load(object sender, EventArgs e)
        {
            DataDataContext db = new DataDataContext();
            var Lst = (from s in db.tbl_sinhviens select s).ToList();
            dataGridView1 .DataSource = Lst;
            txt_masv.DataBindings.Clear();
            txt_tensv.DataBindings.Clear();
            txt_khoa.DataBindings.Clear();
            txt_masv.DataBindings.Add("text", Lst, "masv");
            txt_tensv.DataBindings.Add("text", Lst, "tensv");
            txt_khoa.DataBindings.Add("text", Lst, "khoa");
        }

Download project crub linq with C#

Chúc các bạn thành công!

Tags: crub databaselinqsqlitethêm xóa sửa tìm kiếm database
0