जब session.Save बुला मैं एक NHibernate.PersistentObjectException बार आ रही है जो एक गैर-आरंभिकृत प्रॉक्सी को बचाने के लिए पारित कर दिया() की वजह से है पारित कर दिया। अगर मैं अपनी कैस्केड सेटिंग्स के साथ परेशान हूं तो मैं इसे दूर कर सकता हूं, लेकिन फिर बच्चे की वस्तुओं को बचाया नहीं जा रहा है।NHibernate: अप्रारंभीकृत प्रॉक्सी को बचाने के लिए() और() झरना
केवल अन्य फिक्स मैं पाया है मेरी DefaultSaveEventListener के लिए निम्न जोड़कर है।
protected override bool ReassociateIfUninitializedProxy(object obj, global::NHibernate.Engine.ISessionImplementor source)
{
if (!NHibernateUtil.IsInitialized(obj))
NHibernateUtil.Initialize(obj);
return base.ReassociateIfUninitializedProxy(obj, source);
}
यह स्पष्ट रूप से एक आदर्श समाधान नहीं है।
कोई विचार?
क्या आपने कभी इसका बेहतर समाधान प्राप्त किया है? फिलहाल मुझे उस दृष्टिकोण का उपयोग करना है जिसका आपने उल्लेख किया है कि ReassociateIfUninitializedProxy को ओवरराइड करना है। –
मुझे अभी तक कोई समाधान नहीं मिला है ... – jonnii
क्या आप इस समस्या को allyour ऑब्जेक्ट्स या एक विशेष ऑब्जेक्ट के साथ देख रहे हैं। यदि यह एक विशेष वस्तु है तो क्या आप अपने मॉडल और मैपिंग के साथ प्रश्न अपडेट कर सकते हैं? – Baz1nga