c# - Handle Database Transactions & Exceptions in TreeView with Multi-Tier MVVM -
पृष्ठभूमि: मेरे पास WPF TreeView के आस-पास एक कस्टम उपयोगकर्ता नियंत्रण है। मैं MVVM पैटर्न का उपयोग कर रहा हूं और TreeNode वर्ग और कई व्यूअर किए गए मॉडल जैसे LocationNode, LocationFolder, PersonNode, PersonFolder, CollectionNode, CollectionFolder आदि का आधार दृश्य मॉडल है। पेड़ को कैसे रखा जा सकता है इसका एक उदाहरण है: - संग्रह फ़ोल्डर -> संग्रह नोड -> स्थानफ़ोल्डर -> स्थाननोड -> स्थाननोड - जब मैं ड्रैग एंड ड्रॉप ऑपरेशंस करता हूं, तो प्रत्येक वर्ग व्यावसायिक तर्क को संभालता है, यानी अगर मैं ड्रॉप करता / करती हूं PersonNode पर एक CollectionNode , CollectionNode दृश्य मॉडल में तर्क है कि यह कैसे PersonNode को जोड़ने के लिए इसका बच्चा है PersonFolder । समस्या: सब कुछ बहुत अच्छा काम करता है, मैं पूरे स्थान पर खींच और ड्रॉप कर सकता हूं, और निहित कक्षाओं में कोड को अच्छी तरह से निहित किया गया है। यदि मुझे एक अतिरिक्त बूंद नियम जोड़ने की आवश्यकता है, तो मैं इसे उपयुक्त ड्रॉप लक्ष्य दृश्य मॉडल में जोड़ता हूं। समस्या तब होती है जब PersonNode को Per...