2009-03-23 13 views
13

Ich suche einen einfachen CRUD (oder DAL) Generator für C#. Ich möchte nichts Schwergewicht, da ich nur ein paar Tabellen in einer SQL Server 2008-Datenbank habe.Einfacher CRUD Generator für C#

Irgendwelche Vorschläge? Ich kenne .netTiers, aber es ist viel zu viel für das, was ich brauche.

Danke!

UPDATE: Ich versuchte LINQ zu SQL und es funktioniert nicht gut für meine Bedürfnisse.

+0

Warum funktioniert es nicht gut? –

Antwort

1

LINQ To SQL ist einfach und es ist in .NET 3.5 SP1 integriert.

+1

Es ist das, was ich seit ein paar Tagen zu verwenden versuche, und es ist ein Albtraum. Vor allem, dass ich M: M-Beziehung ... – Martin

2

Was ist ein Datensatz über die Verwendung des DataSet-Designer erstellt. Ich erinnere mich an die alten Tage (.NET 1.0 und 1.1), wir würden einen DataAdapter auf die Designoberfläche ziehen, die Select-Abfrage spezifizieren, und die Abfragen Einfügen, Aktualisieren und Löschen würden für uns basierend auf der Select-Abfrage erstellt werden.

1

Die Visual Studio-Assistenten erstellen eine einfache CRUD-App für Sie.

Ziehen Sie ein Datagrid in Ihr Formular, klicken Sie auf die Verbindungseigenschaft und folgen Sie den Assistenten von dort.

Nicht Best Practices, sondern ist einfach und funktioniert ...

10

ich auf früheren Projekten SubSonic verwendet haben, ist es leicht und einfach zu bedienen.

Sie bieten eine einfache tutorial video und es sollte nicht mehr als 10 Minuten dauern, um es vollständig einzurichten. Ich empfehle die zweite Hälfte des Videos, das sich mit Webanwendungsprojekten befasst, da es zeigt, wie Sie eine benutzerdefinierte Visual Studio-Schaltfläche erstellen, die die DAL für Sie erstellt, wenn Sie darauf klicken, anstatt einen benutzerdefinierten Build-Provider zu verwenden erste Hälfte des Videos.

Es bietet mehrere Möglichkeiten zum Zugriff auf Ihre Daten, Active Record, generierte gespeicherte Prozeduren und Ansichten oder a query language, die Sie verwenden können.

Nachdem Sie es, ich habe ein paar Macken gefunden:

  • Wenn Sie einen generierten gespeichert-Prozedur, die keine Parameter hat, wird es eine NullReferenceException werfen. Eine Abhilfe ist ein Dummy-Parameter zu erstellen, die nicht in dem Verfahren verwendet wird
  • Die DeepSave() Funktion nicht in der aktuellen Version 2.1 funktioniert, werden Sie individuell müssen Daten aus verknüpften Tabellen speichern
  • Wenn Sie eine coditional verwenden (zB Where(Tag.Columns.TagName).IsEqualTo("subjective"), stellen Sie sicher, dass Sie den String-Wert verwenden Tag.Columns.TagName die Spalte zu verweisen - andernfalls wird eine Ausnahme ausgelöst wird, wenn Sie versuchen, die Column.Schema
+0

Subsonic ist wahrscheinlich der leichteste DAL-Hersteller, den ich bisher gefunden habe. Alles andere ist viel zu aufgebläht. Versuchen Sie Version 2.1, die jetzt ein Installationsprogramm hat. –

+2

Ihre Links sind tot; Sie müssen sie aktualisieren, um auf die neue Website unter http://subsonic.github.io/ zu verweisen. Ich denke, soweit möglich. –

+0

Das SubSonic-Projekt scheint in den letzten 2 Jahren nicht aktualisiert worden zu sein. –

2

Nur für den Fall, Geld zu verwenden, ist keine große Sorge, ich habe hatte großen Erfolg mit Vorlagen in CodeSmith.

Es gibt viele Beispielvorlagen für CRUD-Operationen, die direkt aus Ihrer Datenbank gelesen werden können.

+0

Ich stimme zu, ich benutze Code Smith für leichte Sachen, es ist auch einfach, Ihre eigenen Vorlagen zu schreiben, wenn Sie versuchen, in ein bestehendes Projekt zu integrieren, das wirklich praktisch sein kann. – Element

2

einen Blick auf Codesmith nehmen. Die 2.6 version ist kostenlos und die späteren Versionen sind zum Kauf.

0

Schauen Sie sich LLBLGen Pro an, ich schwöre es. Es ist nicht kostenlos, aber nicht teuer. Sie können innerhalb einer Stunde (Code schreiben) aufsetzen und die Vorlagen, mit denen es geliefert wird, generieren Code, der im Prinzip alles tun kann, was Sie wollen. Es ist so schön (und produktiv), nicht mehr über den Datenbankschnittstellencode nachzudenken.

2

versuchen http://pureobjects.com/ es andere Arbeit nicht brauchen, ist

+0

Ich habe pureobjects viele Male verwendet. Es funktioniert super gibt Ihnen alles von der DAL zu den Objekten. Einfügen, Aktualisieren, Löschen von Anweisungen Klassen alles. Einfach in Ihre Tabelle info und einfügen Es tut alles !! – Kaos

+0

pureobjects Link scheint ungültig zu sein, es bringt Sie zu einer anderen nicht-Programmierung Webseite. –

1

ich SubSonic 3 Active wurde mit aber seitdem zu BLToolkit bewegt. BLToolkit ist aufgrund des Mangels an guter Dokumentation viel schwieriger zu beginnen, aber sobald Sie sich daran gewöhnt haben, ist es sehr ähnlich wie SubSonic ... außer, ohne die Leistungsprobleme.

SubSonic ist großartig und einfach, aber die Leistung ist unerträglich für alles praktische. Immer wenn ein Join oder eine Unterabfrage durchgeführt wird, werden ganze Tabellen herunter geladen.