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ừ 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!