I was looking to upgrade my project from EF4.1/Framework 4.0 to EF5/Framework 4.5. After reading up on migrating the t4 templates for STE's (Self-Tracking Entities), I came across this link that indicates that STE's are no longer recommended.

Why is Microsoft no longer recommending the use of STE's?

  • look at the link in your question. It has a detailed explanation why and how to proceed further with it. – EL Yusubov Sep 17 '12 at 19:57
  • Maybe I am missing something. I know how to proceed further but am wondering why the approach is no longer recommended. I didn't really see anything other than "we now want you to do it this way instead". – Maciej Sep 17 '12 at 20:15
  • My understanding was that main issue is security, and how savechanges and applychanges do affect the STE. – EL Yusubov Sep 17 '12 at 22:16
  • I felt the article outlined properties to take into consideration when using STE's. I'm sure there is a reason why they are no longer recommending their use, but I don't think it's for the reasons outlined in the considerations sections. – Maciej Sep 17 '12 at 22:47
  • 4
    There are at least a couple of similar questions on stackoverflow that speak to this concern: [Why are STE no longer recommended?][2] [What is recommended to replace STE?][1] [1]: stackoverflow.com/questions/12456905/… [2]: stackoverflow.com/questions/12462319/… – JustinC Oct 26 '12 at 18:12

Just from the readings, the only thing I could find was here: http://msdn.microsoft.com/en-us/data/jj613668 which stated:

Self-Tracking Entities can not be used with Code First models

While that may not be a big deal, MS has put a pretty good investment into this with their Fluent API and is now the recommend approach to modeling your database. This is very much (almost identical) to how all DB work is done in a Rails environment with ActiveRecord and ActiveRecord::Migration.

There are also some advantages to using their Fluent API such as versioning your database changes and being able to standup/migrate changes to a new DB simply by running the update-database commands. So, it might make sense for MS to not recommend something that disallows the use of this new technology.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.