Frage

Kann mir jemand sagen, ob es möglich ist, die lINQ2SQL generierten Klassen in ein separates Projekt in C#zu extrahieren? - Ich nehme an, ich kann die Dateien einfach erstellen und dann in ein neues Projekt kopieren und einen Verweis auf mein Datenprojekt hinzufügen?

Das Problem, das ich habe, ist, dass ich meine Benutzeroberfläche, Serviceschicht und Datenschicht habe ...

Derzeit hat die Datenschicht auch die generierte LINQ2SQL, da hier der DBML ist.

Daher muss ich eine Referenz von Service zu Daten haben, was gut ist! Aber ich habe meine Benutzeroberfläche, um die Serviceschicht zu verweisen, aber ich denke nicht, dass es eine gute Idee für meine Benutzeroberfläche hat, einen Verweis auf die Datenschicht zu haben (da sie für die linQ2SQL -Klassen erforderlich wäre).

Ich sehe also nur die Möglichkeit, die Klassen herauszuholen und in ein separates Projekt zu platzieren, damit alle Projekte teilen können. Ist diese gute Praxis?

Welche Namenskonventionen sollte ich dieses Projekt nennen, DTO? Poco? Einheiten? oder ähnliches

Ich würde es wirklich gerne hören, wie man dieses und das Wetter durchführen kann. Ich bin die richtigen Linien

War es hilfreich?

Lösung

Ich bin mir nicht zu 100% sicher, ob dies auch für linq2SQL funktioniert (ich stelle mir vor), aber das mache ich mit LINQ2ENTITY:

Sobald die Klassen generiert wurden, bewege ich sie manuell in ein anderes Projekt. Normalerweise nenne ich dieses Projekt xxxxxx.model. Entitäten wären wahrscheinlich auch in Ordnung, aber ich würde mich von DTO und Poco fernhalten, weil diese Klassen auch nicht sind. Ich glaube, es gibt eine Möglichkeit, POCO mit LINQ2SQL zu machen, aber nicht, wenn Sie den Designer verwenden. Ich füge dann Referenzen nach Bedarf auf die anderen Schichten hinzu.

Hoffe das hilft.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top