Ich habe eine Entität, die viele von sich selbst enthält, wie ich dies in LINQ zu SQL so, dass es nicht eine Endlosschleife von e1 dann alle seine Kinder dann ihre tun Eltern (e1) dann seine Kinder und wiederholen? Jetzt weiß ich, dass ich das tun kann, wenn ich die kind-Eigenschaft auf false setze, aber das ist die wichtigste Eigenschaft (kümmere dich nicht wirklich um den Elternteil). Gibt es eine Möglichkeit, es lazy loading zu lassen? Würde das das sogar reparieren?linq to sql Stapelüberlauf mit selbstreferenzierenden Einheit
1
A
Antwort
0
Soweit ich weiß LINQ to SQL lädt standardmäßig Lazy. Und selbst wenn nicht, bin ich mir ziemlich sicher, dass die MS-Leute eine Art von identity map verwendet haben, um sicherzustellen, dass jeder Datensatz nur einmal pro DataContext geladen wird.
Haben Sie erlebt, dass es in der Praxis in einer Schleife stecken geblieben ist?
1
im Designer eine Eigenschaft in einem Objekt in dem Diagramm auswählen und im Code Generation Abschnitt im Fenster Eigenschaften, setzte Verzögerung Wahr-geladen.
Siehe this blog post.
-1
Diese Seite für meine bereits bestehenden Vorurteile nicht gut ist, stellt sich heraus, dieses wurde eine schlecht konfigurierte Route nicht faul/eager loading
Sie den Designer generierten Code verwenden? Es lohnt sich, die DBML zu sehen und sicherzustellen, dass Sie in Ihren Daten keine kreisförmigen Links haben. – DamienG