bigpoint Geschrieben 8. November 2006 Teilen Geschrieben 8. November 2006 Hallo Leute, ich möchte gerne OR Mapper unter C# und ADO.NET programmieren. Dazu brauche ich eure Hilfe bzw. Erfahrungen :hells: Was muss so einen OR Mapper eure Meinung nach können? Was wurdet ihr von einem sehr gutem OR Mapper erwartet. Was denkt ihr überhaupt über OR Mapper? Sind die nützlich, brauchbar? Gruß bigpoint Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Guybrush Threepwood Geschrieben 8. November 2006 Teilen Geschrieben 8. November 2006 Naja von einem "sehr guten" OR Mapper würde ich erwarten das er meine Klassen so weit wie möglich, ohne das ich irgendwelche extra Angaben über den Aufbau der Klasse machen muss, analysieren und dann in eine DB speichern kann. Umgekehrt natürlich genauso, das er mir also einen Vorschlag für eine Klasse zu den vorhanden Daten implementiert. Ob ein OR Mapper brauchbar ist hängt davon ab ob er alle an ihn gestellen Anforderungen erfüllt, wenn dem so ist ist er auch hilfreich Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
bigpoint Geschrieben 9. November 2006 Autor Teilen Geschrieben 9. November 2006 Naja von einem "sehr guten" OR Mapper würde ich erwarten das er meine Klassen so weit wie möglich, ohne das ich irgendwelche extra Angaben über den Aufbau der Klasse machen muss, analysieren und dann in eine DB speichern kann. Was verstehst du unter analysieren?? Umgekehrt natürlich genauso, das er mir also einen Vorschlag für eine Klasse zu den vorhanden Daten implementiert. Hm… Eine Klasse ist doch in dem fall nichts anderes als Darstellung eine DB-Tabelle, man kann also Daten anzeigen, löschen, bearbeiten, speichern .. Hast du das als Vorschlag gemeint? Ob ein OR Mapper brauchbar ist hängt davon ab ob er alle an ihn gestellen Anforderungen erfüllt, wenn dem so ist ist er auch hilfreich Eben die Anforderungen wurden mich interessieren Abgesehen davon ist es doch noch eine zusätzliche schicht über ADO.NET spricht nicht so performant wie ADO.NET ?? und reicht ADO.NET nicht aus ?? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Guybrush Threepwood Geschrieben 9. November 2006 Teilen Geschrieben 9. November 2006 Der Mapper muss schauen wie die Klasse aufgebaut ist, d.h. welche Attribute Sie hat die in die DB geschrieben werden müssen und mit welchen Klassen sie wie in Verbindung steht um diese Beziehungen auf die DB zu übertragen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
MarkusLe Geschrieben 9. November 2006 Teilen Geschrieben 9. November 2006 Hallo bigpoint, Du hast Dir EINIGES vorgenommen, hab mir selbst einmal Gedanken zu dem Thema gemacht einen "guten" OR-Mapper zu schreiben und bin am Ende zu dem Schluss gekommen dass ichs doch lieber fest verdrahtet mache. Ein paar Gedanken zum OR Mapper: - Mapping von Objekten mit Listen und in Listen ohne Redundante Speicherung - Änderungen im Datenmodell, Kompatibilität von alten zu neuen Objekten - Automatisches Anpassen von Tabellen wenn sich ein Datentyp ändert - Sperren der Datenbank, oder von Teilend er Datenbank um Inkonsistenzen durch mehrere gleichzeitige Speichervorgänge zu vermeiden. - Speichern von Referenzen - Ggf. Attribute für die genauere Beschreibung der Klassen und deren Abbildung in der Datenbank. - Primärschlüssel, Sekundärschlüssel usw ... - Realisierung von Suchabfragen Hab jetzt bestimmt auch einiges vergessen Hoffe das hilft Dir etwas weiter, MfG Markus Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Argbeil Geschrieben 10. November 2006 Teilen Geschrieben 10. November 2006 Auf jeden Fall Lazy Loading und automatisches markieren und persistieren wenn ein Objekt Dirty ist. Komplexe Objektbäume müssen in der Datenbank gesichert werden, er sollte also relationen erkennen und abbilden können. Am coolsten wäre wenn es für den User wie eine Objektorientierte Datenbank aussieht, siehe mein Video hier: db4o .net Tutorial 1 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
perdian Geschrieben 11. November 2006 Teilen Geschrieben 11. November 2006 Hallo Leute, ich möchte gerne OR Mapper unter C# und ADO.NET programmieren.Viel Erfolg! Aber bist du dir wirklich im klaren darüber, was für ein Aufwand das werden kann? Ich will dich nicht von der Idee abbringe, aber mit mehreren Mannwochen musst du - auch bei den Grundfunktionalitäten - schon rechnen. Was muss so einen OR Mapper eure Meinung nach können? Was wurdet ihr von einem sehr gutem OR Mapper erwartet.Das hängt immer sehr stark vom Anwendungsfall und der größe der Applikation, in der die ORM-Lösung eingesetzt werden soll ab. Für unverzichtbare Basisfunktionalitäten halte ich: - Analyse der Klassenstruktur und automatisches Mapping von Klassenproperties auf Datenbankspalten - Erstellen und Verändern von Tabellen und Tabellenspalten - Datenbankneutralität, also eine Zwischenschicht, die die Verwendung von verschiedenen SQL Dialekten ermöglicht - CRUD Operationen (Create, Retreive, Update, Delete) Ohne diese Funktionalitäten ist ein ORM System praktisch witz- und nutzlos. Doch ist damit noch lange nicht das Ende der Entwicklungskette erreicht. Als nächstes kommen Dinge wie - Abbildung von Relationen (One-To-One, One-To-Many, ...) - Lazy Loading - Transaktionen - Caching - ... um nur mal einen Ausschnitt zu bringen. Was denkt ihr überhaupt über OR Mapper? Sind die nützlich, brauchbar?Ich halte sie ab einer gewissen Komplexität innerhalb der eigenen Applikation für unverzichtbar. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
bigpoint Geschrieben 13. November 2006 Autor Teilen Geschrieben 13. November 2006 Vielen Dank für die Antworten, es hat mich ein Stück weiter gebracht:e@sy ... - Erstellen und Verändern von Tabellen und Tabellenspalten ist es wirklich ORM Aufgabe?? Ich sehe es mehr als DB Administration und das soll doch ORM meine Meinung nach nicht machen/können. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
perdian Geschrieben 13. November 2006 Teilen Geschrieben 13. November 2006 ist es wirklich ORM Aufgabe??Ja, ich denke schon. Wenn ich schon auf objektorientierter Ebene arbeiten will und das Mapping auf die Datenbank von einer Zwischenschicht erledigen lasse, dann will ich nicht doch wieder hingehen und auf Datenbankebene wieder Konfigurationsarbeit durchführen (=Tabellen erstellen, etc.) Ansonsten müsste ich jedes Mapping zweimal erledigen. Viel zu viel Potential für Fehler und schlicht und ergreifend nicht komfortabel genug. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.