Frage

Ich will SubSonic (2.2) in einer Anwendung verwenden, ich baue, weil ich seine Einfachheit mögen und es behandelt jede Art von Abfrage kann ich brauche voraussehen. Zugleich möchte ich die oberen Schichten meiner Anwendung entkoppelten halten von den Subsonic-Typen. Ich will nur Plain Old C # Objekte zurück und übergeben Sie auch in POCOs zu speichern.

Aber hier ist der Haken: Ich meine POCOs will auf den FK-Beziehungen basierend Faule geladen Eigenschaften für Kinder Sammlungen und übergeordnete Objekte haben. Ich denke, ich muß irgendwie ein Subsonic sqlquery Objekt in einem privaten Mitglied auf meiner POCO setzen und die intern für eine faule loaded Eigenschaft in dem Getter verwendet werden.

Alle Ideen, wie dies mit SubSonic speziell zu implementieren? Wer das schon mal gemacht?

ich erkennen, dass die nächste Version von SubSonic wird diese Out-of-Box tun, aber das schaut weg atleast ein paar Monate sein.

War es hilfreich?

Lösung 4

kann nicht immer eine gute Möglichkeit herauszufinden, dies zu tun. Subsonic 3 sieht sehr schön und würde das Problem, aber in der Zwischenzeit wir nur ging mit NHibernate .

Andere Tipps

Ich verwende die RepositoryRecord in SubSonic, die "überwiegend" poco ist. Dann mache ich partials für jene Klassen, die die andere Klasse zu laden, wenn eine Eigenschaft ausgewählt ist.

Partial Public Class Book

Private _Author as Database.Author 
Property Author() as Database.Author
  Get
     If _Author is nothing then
       ' Load the author class here.
     End if
     return _Author
  End get
  Set
     ....
  End Set
End Property
End Class

Sie können das Attribut verwenden:

  

tableBaseClass = "RepositoryRecord"

Ich fürchte, ich weiß nicht, wie dies obwohl die träges Laden abwickelt. Sie können sehen, Rob Conery der Post Informationen für weitere Details.

Was Sie wollen, ist nicht in der Version 2.x. Sie könnten in der Lage sein, die meisten des Weges dorthin durch die Vorlagen Bearbeitung (Ich habe Beispiele für faul belastete Eigenschaft auf meinem Blog ). Eine weitere Option ist Ihre pocos dann Klassen aufzubauen baut aus den SubSonic generierten Klassen und Abfragen zu Ihrem Modell abzubilden.

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