.net - How to save object updates to database with EntityFramework? -


i have following scenario:

public void updateemployee(int empid, int deptid, int level) {   employee emp = getemployee(empid);   emp.deptid = deptid;   emp.level = level;    using (var mye = new myentity())   {     //this having no effect?     wc.savechanges()   } } 

i'm not sure how save employee object update database. employee exist in database. should go in using block?

attach before modifying, modify, save changes.

public void updateemployee(int empid, int deptid, int level) {   employee emp = getemployee(empid);    using (var dbcontext = new mydbcontext())   {    dbcontext.employees.attach(emp);    emp.deptid = deptid;    emp.level = level;    //this having no effect?    dbcontext.savechanges()   } } 

you attach it, , set state modified:

public void updateemployee(int empid, int deptid, int level) {   employee emp = getemployee(empid);   emp.deptid = deptid;   emp.level = level;        using (var dbcontext = new mydbcontext())   {    dbcontext.employees.attach(emp);    dbcontext.entry(emp).state = entitystate.modified;    dbcontext.savechanges()   } } 

and if want send fields in update instead of columns:

public void updateemployee(int empid, int deptid, int level) {   employee emp = getemployee(empid);   emp.deptid = deptid;   emp.level = level;        using (var dbcontext = new mydbcontext())   {    dbcontext.employees.attach(emp);    dbcontext.entry(emp).property(p => p.deptid).ismodified = true;    dbcontext.entry(emp).property(p => p.level).ismodified = true;    dbcontext.savechanges()   } } 

Comments

Popular posts from this blog

javascript - jquery or ashx not working -

opencv - DataType<cv::detail::deriv_type>::depth what is it used for -

python 3.x - Mapping specific letters onto a list of words -