2010-03-19 7 views
5

Mein Team ist Bewertung zu einem größeren Business-Portal. (Rechnungen, Buchhaltung, Gehälter .....)Ria Services vs WCF Dataservices

Wir sind alle gewohnt, mit DDD, O/R-Mapper mit NHibernate als unsere erste Wahl zu arbeiten. Wir haben uns für die Zusammenarbeit mit CompositeWPF entschieden, um die Modularität zwischen allen Modulen und dem Teilsystem im Geschäftsportal zu gewährleisten.

Jetzt haben wir Ria Services ausgewertet und sind enttäuscht, wie es in einer datenorientierten Art und Weise funktioniert, Data Oriented kann in einem serviceorientierten Szenario gut sein, aber wir glauben, dass wir mit einem objektorientierten Ansatz und wir Ich denke, dass wir mit dem OO-Ansatz eine Anwendung mit weniger Komplexität erhalten können als mit dem DO-Ansatz. Zum Beispiel erlaubt es nicht, Value Objects, Viele-zu-viele Beziehungen, alles muss Schlüssel und so weiter haben.

Wir haben uns WCF Data Services noch nicht angesehen, also ist unsere Frage WCF Data Services unsere Antwort? Passt es gut in Silverlight 4? Können wir damit OO-mäßig arbeiten?

Antwort

2

Bei RIA/WCF geht es nicht darum, O/R-Mapper zu ersetzen. Es geht darum, Daten in einem offenen Format einer anderen Anwendung auszusetzen. Nicht High-End, aber grundsätzlich für die Integration. Es ist IMHO ziemlich dumm, das in eine Anwendung zu stellen, aber es ist eine großartige externe Schnittstelle, vor allem, da es Werkzeugunterstützung bekommt.

Gute Beispiele:

  • Bankbuchhaltung Zugang. Wenn ich nur mit Odata Homebanking machen könnte;) Und meine Kontoauszüge in Excel bringen.
  • Trading;) Ja, ok - Ich habe einen Trading-Server (der dann zu verschiedenen Brokern verbindet). Ich habe ein Web-Frontend. Ich werde nun bestimmte Daten auch über OData verfügbar machen, so dass ich leicht Dinge in Excel herausholen kann, oder sogar eine Silverlight-Anwendung für einige Sachen verwenden kann ... aber ich werde OData NICHT innerhalb einer Anwendung verwenden, um meine Objektinfrastruktur zu ersetzen. viel zu viel Schwebekopf.
  • Ebay könnte eine OData-Schnittstelle für größere Kunden bereitstellen. Schön, dass Sie sich einen Überblick über Ihre Auktionen verschaffen und grundlegende Wartungsarbeiten an Ihrem Konto vornehmen. Nichts Hochleistung, aber wieder TOOLING Unterstützung. Excel, Report Services unterstützen bald OData.

Wenn Sie es aus dieser Sicht der Integration betrachten, macht es eine Menge mehr Sinn. Es ist keine vollständige Umgebung - das "nie" funktioniert. Es ist jedoch eine große Standardisierung, eine Anwendung mit Semantik (besser als Web-Services - standardisierte Abfrage- und Filterlogik) UND Werkzeugunterstützung zu öffnen.

ich irgendwie wirklich in viele Probleme mit einer Menge von Elementen laufen nicht Sie erwähnen, aber:

  • Alles, was ich mit der Arbeit hat einen Schlüssel per Definition
  • I rdo viele neve: viele Beziehungen. Ich habe immer ein Zwischenobjekt MIT EINEM SCHLÜSSEL .... damit ich Eigenschaften hinzufügen kann (und wenn das nur ein Zeitstempel ist).

Die Dienste sind datenorientiert und ernsthaft - ich liebe sie. Ich bin ein großer OO-Fan, aber die Tooling-Unterstützung macht dies zu einer PERFEKTEN externen Schnittstelle für Anwendungen.

+0

Nachdem ich es gerade für ein internes Projekt verwendet habe, fühle ich mich sehr in OData und WCF Data Services verliebt. – Kev

+0

Persönlich bin ich auch sehr glücklich darüber. Ich liebe die Werkzeuge wirklich.Schließlich kann ich Reporting (2008 Reporting Services) gegen mein Objektmodell als ausgesetzt, und nicht in die Datenbank gehen. – TomTom