Ich bin in den frühen Phasen der Planung einer Konvertierung einer großen klassischen ASP-Datenbank-Anwendung zu ASP.Net und ich habe Probleme bei der Auswahl, welche Datenzugriffsmethode zu verwenden. Ich habe mit Linq To SQL, Dynamic Data, stark typisierten Datasets, Enterprise Library (Data Access Application Blocks) und ein bisschen mit Entity Framework herumgespielt, aber keiner von ihnen ist mir als "der Eine" erschienen. Es gibt einfach zu viele Möglichkeiten - mein Kopf schwimmt, hilf mir zu wählen!Brauchen Sie Rat bei der Auswahl einer Datenzugriffsmethode?
Vielleicht würde es helfen, einige Hintergrundinformationen über die Anwendung zu geben, die mich mit den Prioritäten ...
Das Backend ist Microsoft SQL Server (2005 oder höher) an Umwandlung entlang und wir sind verpflichtet, dass ich mir keine Sorgen darüber machen muss, jemals eine andere Datenbankplattform zu unterstützen.
Die Datenbank ist sehr ausgereift und enthält einen Großteil der Geschäftslogik. Es ist hochgradig normalisiert und nutzt umfangreiche gespeicherte Prozeduren, Trigger und Ansichten. Ich möchte lieber nicht zwei Räder gleichzeitig neu erfinden, deshalb möchte ich möglichst wenige Änderungen an der Datenbank vornehmen. Daher muss ich eine Datenzugriffsmethode wählen, die flexibel genug ist, um alle Macken in der Datenbank zu umgehen.
Die Anwendung hat viele Dateneingabeformulare und umfangreiche Such-und Reporting-Funktionen (Berichte sind ein anderes Tier, das ich später angehen werde).
Die Anwendung muss flexibel genug sein, um kleinere Änderungen an der Datenbankstruktur zu ermöglichen. Die Anwendung (und die Datenbank) kann an verschiedenen Standorten installiert werden, an denen geringfügige benutzerdefinierte Änderungen an der Datenbank vorgenommen werden. Idealerweise könnte die Anwendung die Datenbankerweiterungen identifizieren und entsprechend reagieren. Mit anderen Worten, wenn ich ein O/R-Mapping in der Anwendung speichern muss, muss ich in der Lage sein, das zu ersetzen (oder es einfach zu aktualisieren), wenn ich die Anwendung und die Datenbank an einem neuen Standort installiere.
Schnelle Anwendungsentwicklung ist entscheidend. Da die Datenbank bereits fertig ist und die Benutzeroberfläche der vorhandenen Anwendung sehr nahe kommt, hoffe ich, etwas zu finden, wo wir das relativ schnell erledigen können. Ich bin bereit, zu opfern, nicht die absolut späteste und größte Technologie zu verwenden, wenn es Zeit in der Entwicklung spart. Mit anderen Worten, wenn es eine steile Lernkurve für die Verwendung von etwas wie Entity Framework gibt, bin ich gut damit, etwas wie stark typisierte Datasets und eine benutzerdefinierte DAL zu gehen, wenn es den Prozess beschleunigen wird.
Ich bin ein totaler Neuling zu ASP.Net, bin aber vertraut mit Classic ASP, T-SQL und der alten ADO (z. B. getrennte Recordsets). Wenn eine der Datenzugriffsmethoden für jemanden, der aus meinem Hintergrund kommt, besser geeignet ist, könnte ich mich in diese Richtung lehnen.
Danke für jede Beratung, die Sie anbieten können!
Mit so vielen Möglichkeiten, das gleiche zu tun, würde ich gerne sehen, was 1 Werkzeug ist gut für andere (d. H. Wann, welche zu verwenden)? zusammen mit der Evaluierung von Tools auf einige Parameter (zB Lernkurve, Wartung, Einfachheit, Community-Unterstützung etc.) – shahkalpesh
Ich habe gehört, dass nHibernate sehr mächtig ist, aber ich habe auch gelesen, dass die Lernkurve ziemlich steil ist, um es zu verwenden richtiger Weg. Leider haben wir diese Zeit nicht. – CowherPower
Wie viel Zeit hast du? Ich brauchte ein paar Tage, um herauszufinden, wie ich mein erstes Objektdiagramm 3 maximal abbilden konnte. Ich bin ein Entwickler von 1, klingt wie du ein Team hast. – JoshBerke