मुझे कई से अधिक रिश्तों को मैप करने की कोशिश करने में समस्या आ रही है, जहां रिश्ते के दोनों पक्ष एक ही इकाई का संदर्भ देते हैं। मैं फ्लुएंट एनएचबेर्नेट और एनएच 3.1 का उपयोग कर रहा हूं।धाराप्रवाह निबर्ननेट - एक ही इकाई पर कई से अधिक रिलेशनशिप मैपिंग
असल में, परिदृश्य यह है - मेरे पास एक श्रेणी है, जिसमें कई माता-पिता हो सकते हैं। इस प्रकार, एक श्रेणी में माता-पिता के साथ-साथ कई अन्य श्रेणियां भी अपने बच्चों के रूप में कई अन्य श्रेणियां होती हैं।
HasManyToMany(x => x.ParentCategories).AsBag().Table("parentcategorychildren").ParentKeyColumn("ChildID").ChildKeyColumn("ParentID").Cascade.SaveUpdate();
HasManyToMany(x => x.ChildrenCategories).AsBag().Table("parentcategorychildren").ParentKeyColumn("ParentID").ChildKeyColumn("ChildID").Inverse();
हालांकि, जब मैं कारखाना बनाने की कोशिश, मैं निम्नलिखित त्रुटि मिलती है:
The relationship Category.ChildrenCategories to Category.ChildrenCategories has Inverse specified on both sides. Remove Inverse from one side of the relationship.
क्या मैं अजीब लग रहा है क्यों यह Category.ChildrenCategories करने के लिए 'Category.ChildrenCategories' का उल्लेख किया जाता है, अभिभावक श्रेणियों के विरोध में?
किसी भी मदद की सराहना की जाएगी!
मैंने अभी इसके लिए एक बक्षीस बनाया है, क्योंकि यह मेरे लिए काफी महत्वपूर्ण है। कृपया, मुझे एक जवाब के रूप में "आप ऐसा नहीं कर सकते" में रूचि नहीं है।
हमें एक ही समस्या है। एक जवाब की सराहना की जाएगी। –
यदि यह वास्तव में एफएनएच में एक बग है, तो आप हमेशा पारंपरिक एक्सएमएल मैपिंग या उत्तर में दिए गए वर्कअराउंड का उपयोग कर सकते हैं। – Vadim
मैंने इसके लिए [एक मुद्दा] उठाया है (http://fluentnhibernate.lighthouseapp.com/projects/33236-fnh/tickets/212-inverse- validation-fails-on-self-referential-relationships)। हम इसे एएसएपी ठीक कर देंगे। –