.net - EF5: How to alter the default Delete function to implement my own -


well, here situation:

we have tables dont want ever delete data. there column called isdeleted supposed updated instead instead of deleting it.

i want develop accompanying web app ef5 have problem there. how implement restriction?

i use stored procedures delete , select hoping way use standard functions in ef, changing how work. way less arduous , options have achieve want, since i´m guessing i´m not first person ask this?

you can override savechanges method of dbcontext. e.g. want forbid deleting products. can save entities isdeleted flag set true instead of deleting them:

public override int savechanges() {     var deletedpersonentries = changetracker.entries<person>()                                     .where(e => e.state == entitystate.deleted);      foreach (var e in deletedpersonentries)     {         e.state = entitystate.unchanged;         e.entity.isdeleted = true;     }      return base.savechanges(); } 

another option - raise exception if tries delete product:

if (deltedproductentries.any())     throw new exception("you should not delete products!"); 

you can set entities state unchanged, don't think solution.


Comments

Popular posts from this blog

c# - How Configure Devart dotConnect for SQLite Code First? -

java - Copying object fields -

c++ - Clear the memory after returning a vector in a function -