Mischen von Entity Framework mit Web API

8

Ich untersuche das neue ASP.NET MVC4 Web API Framework. Ich führe die Betaversion von Visual Studio 2011 in der Windows 8 Consumer Preview aus.

Mein Problem ist, dass keines der offiziellen Beispiele für das neue Web-API-Framework irgendein Datenbank-Backend verwendet. In der Vergangenheit war ich in der Lage, eine lokale SQL CE-Datenbank zu erstellen und sie über einen WCF-Datenservice mit Entity Framework als ORM bereitzustellen. Wie mache ich das gleiche mit Web-API?

Auch, ist das überhaupt eine gültige Frage? Soll ich weiterhin einen WCF-Datenservice verwenden, wenn ich eine Entity Framework-zugeordnete SQL CE-Datenbank bereitstellen möchte? Es scheint gut zu funktionieren, abgesehen davon, dass es nicht die Flexibilität bietet, Antwortformatierer zu wählen, die ich mit Web-API bekommen könnte.

    
Jeremy Bell 05.03.2012, 21:02
quelle

2 Antworten

4

Wenn Sie sich das offizielle Contact Manager-Beispiel ansehen , finden Sie, dass das Repository-Muster verwendet wird, um auf die Datenebene zuzugreifen. Bedenken Sie auch, dass es in diesem Beispiel auch DI via Ninject gibt.

In meinem Fall habe ich das einfach auf ein bereits bestehendes EF-Modell gesteckt.

Hier ist ein Beispiel für eine Repository-Implementierung

%Vor%

Ihr Kilometerstand kann jedoch variieren, und Sie möchten möglicherweise einen Teil dieses Datenzugriffs noch weiter abstrahieren. Eine gute Nachricht ist, dass viele Muster und Ideen, die Sie möglicherweise bereits auf MVC-basierten Projekten verwendet haben, sind noch gültig .

    
JSancho 06.03.2012, 12:05
quelle
2

Ich habe nicht mit der WCF-Web-API gearbeitet, daher kann ich mit Sicherheit sagen, ob Sie sie genauso wie mit der WCF-Web-API verwenden können, aber ich bin sicher, dass Sie EF mit der ASP.NET-Web-API verwenden können. Ich schlage vor, dass Sie sich ansehen, wie ASP.NET MVC EF nutzt sollte es sehr ähnlich sein, wie Sie es mit ASP.NET Web API verwenden würden.

Wenn Sie eine neue Entwicklung planen, sollten Sie die ASP.NET-Web-API in Erwägung ziehen, da es eine Ankündigung zu wcf.codeplex gibt .com sagt:

  

Die WCF-Web-API ist jetzt ASP.NET-Web-API! ASP.NET Web API veröffentlicht mit   ASP.NET MVC 4 Beta. Die WCF-Web-API und WCF-Unterstützung für jQuery-Inhalte   auf dieser Seite wird bis Ende 2012 entfernt.

    
frennky 05.03.2012 22:55
quelle