Ich folge einem Tutorial von Scott Gu, die auf eine Klasse namens DbContext verweist. Ich kann es auf keinem Namespace auf Framework 4 finden und es scheint mir, dass es von CT4 DbContext in .net4 System.Data.Linq.DataContext umbenannt wurde. Ist meine Annahme richtig?Ist DbContext dasselbe wie DataContext?
Antwort
DbContext
ist eine neue Klasse, die in den letzten separaten Download von EF-Team hinzugefügt wurde. Es ist derzeit nicht Teil des Kerns EF 4.0. DbContext
vorwärts zu bewegen wäre jedoch der bevorzugte Weg, um mit EF zu interagieren.
Also wie unterscheidet es sich von ObjectContext
? Nun semantisch sind sie genau das gleiche, aber sie haben viel zusätzliches Rauschen reduziert, das ObjectContext
hatte. Wie eine Menge auszusetzen mehr Arbeit erforderlich, zum Beispiel:
public ObjectSet<Customer> Customers
{
get { return db.CreateObjectSet<Customer>(); }
}
Mit DbContext
können Sie tun:
public DbSet<Customer> Customers { get; set; }
Grundsätzlich auf den ObjectContext
, wenn Sie das tun Punkt (.
), alles ist genau das Richtige dort die macht die Liste ziemlich groß. Was das EF-Team eigentlich auf DbContext
aussetzen wollte, sind Entitäten, die nur für Ihre Domain spezifisch sind und die Restfähigkeit des Frameworks unter verschiedenen Eigenschaften versteckt. Es erleichtert nur die Programmiererfahrung.
Dies bedeutet, wenn Sie gerade ObjectContext
verwenden, mit ein wenig Code, können Sie leicht zu DbContext
verschieben.
Irgendwelche Idee, wenn es in den Haupt-Framework-Zweig zusammengeführt wird? –
EF 4.1 wurde am 11. April 2011 veröffentlicht. Weitere Informationen finden Sie unter http://blogs.msdn.com/b/adonet/archive/2011/04/11/ef-4-1-released.aspx. – villecoder
Verbindet Sie das nicht mit EF für Ihr gesamtes Projekt, sagen Sie, Sie hätten eine Business-Schicht? – Coops
Es ist ein bisschen zu spät, aber für die Googler. DbContext
für EF
verwendet wird (EntityFramework) und DataContext
für L2S
verwendet (LINQ to SQL).
- 1. Ist R.layout.listview dasselbe wie R.idlistview
- 2. WPF-Benutzersteuerelement DataContext ist Null
- 3. Ist DbContext eine teure Operation?
- 4. Ist Dalviks Speichermodell dasselbe wie Java?
- 5. Ist com.sun.org.apache dasselbe wie das org.apache-Paket?
- 6. LynxOS strtod ist nicht dasselbe wie Linux
- 7. ASP Sitzungsvariablen: Ist "" dasselbe wie IsEmpty?
- 8. Ist window.location() dasselbe wie eine GET-Anfrage?
- 9. YARD ist nicht dasselbe wie RDoc?
- 10. Ist libsqlite3.tbd dasselbe wie libsqlite3.dylib?
- 11. Wie zu Aktualisieren DbContext
- 12. Wie matcht man dbcontext?
- 13. Ist "find_all" und "select" dasselbe?
- 14. Merge ASP.Net Identity DbContext mit meinem DbContext
- 15. Kann ich gleichzeitig über dasselbe DataContext-Objekt auf mehr als eine Tabelle zugreifen?
- 16. Standard Datacontext
- 17. Warum ist mein DbContext DbSet null?
- 18. DbContext Entsorgung?
- 19. Ist 'void (*) (int)' dasselbe mit 'void (^) (int)'?
- 20. LINQ DataContext
- 21. Ist PHP für Windows dasselbe wie Linux, Mac usw.?
- 22. realpath auf Cygwin ist nicht dasselbe wie PWD
- 23. Code in Github ist nicht dasselbe wie Code auf Produktionsserver
- 24. Ist das VB-Schlüsselwort "Is" dasselbe wie Object.ReferenceEquals?
- 25. Ist ReferenceEquals (null, obj) dasselbe wie null == obj?
- 26. netbeans web.xml-Datei ist dasselbe wie pom.xml-Datei in Eclipse?
- 27. Google Web Fonts (css) ist nicht dasselbe wie in Photoshop
- 28. jQuery: ist $ ('element img') dasselbe wie $ ('element'). Find ('img');
- 29. Datacontext auf Command unterscheidet sich von Datacontext auf Befehl selbst
- 30. Entity Framework - DbContext SaveChanges()
haben Sie das CTP heruntergeladen? Ich glaube, es verwendet einen Namensraum wie System.Data.Entities.CTP oder so ... – AllenG
Ich habe nicht. Aber ich habe über ObjectContext erfahren. Da dies für ein Produktionssystem ist, kann ich CTP nicht verwenden. –
NB Ich weiß es offensichtlich, aber 'System.Data.Linq.DataContext' stammt von LINQ To Sql und' DbContext' ist von Entity Framework –