public int add(MauSac obj)
 {
     this._db.ds_mausac.Add(obj);
     //commit
     this.save();
     //return ma moi nhat
     return this._db.ds_mausac.Max(x => x.id);
 }
 public Boolean delete(MauSac obj)
 {
     try
     {
         //get entity
         obj = this.get_by_id(obj.id);
         //remove
         this._db.ds_mausac.Remove(obj);
         //commit
         return this.save();
     }
     catch (Exception ex)
     {
         Debug.WriteLine(ex.ToString());
         return false;
     }
 }
 public void add_without_save(MauSac obj)
 {
     _db.ds_mausac.Add(obj);
 }
 public List<string> validate(MauSac obj)
 {
     List<String> re = new List<string>();
     if (obj.giatri.Equals(""))
     {
         re.Add("giatri_fail");
     }
     return re;
 }
 private void btThemMau_Click(object sender, EventArgs e)
 {
     InputDialog ip = new InputDialog();
     if (ip.ShowDialog() == DialogResult.OK)
     {
         MauSac ms = new MauSac();
         ms.giatri = ip.GiaTri;
         ms.id = MSCtr.get_max_id_local_source() + 1;
         MSCtr.add_without_save(ms);
         MessageBox.Show("Thêm thành công.");
         if (btThemChiTietSP.Enabled) LoadCb_MauSac();
         else LoadCb_MauSac("all");
         IsChange = true;
     }
 }