Ich habe einen WCF service
erstellt, der die Daten meiner Datenbank offen legt, da ich nicht möchte, dass meine Anwendung direkt auf die Datenbank zugreift (aus Sicherheitsgründen) und ich Daten mit Anwendungen von Drittanbietern teilen muss.Ist es besser, POCO-Objekte oder ein losgelöstes EntityFramework-Objekt zu verwenden, um die Datenbank über WCF verfügbar zu machen?
Meine Lösung ist folgendermaßen aufgebaut: WPF application
->WCFService library
->DataAccessLayer library
. (Pfeile Montage Abhängigkeiten definieren ‚hängt von‘)
die WCF service
ich einfach als zu implementieren, um detached EntityFramework objects
vom Dienst zurück, aber es zwingt die Hauptanwendung eine Abhängigkeit von der DataAccessLayer Bibliothek haben.
Die einzige Art, wie ich um das zu bekommen ist POCO objects
zu erzeugen und verwendet sie, um sie über den Draht zu senden, aber jetzt habe ich Werte zur Karte hin und her EntityFramework.
Im Moment i s bin Erzeugung POCO
dynamisch über eine T4 template
und ich verwende AutoMapper
, um Werte hin und her EntityFramework
.
Der Wcf-Dienst muss nur das Repository-Muster implementieren, um Daten verfügbar zu machen.
Ist das eine gute Lösung? Gibt es noch eine andere Option? Gibt es irgendwelche Mängel, denen ich bewusst sein sollte?