मैं एक डोमेन मॉडल एक संपादक और एक परियोजना की अवधारणा है कि है।
एक संपादक परियोजनाओं के एक नंबर का मालिक है, और एक परियोजना न केवल एक संपादक मालिक, लेकिन यह भी संपादक के सदस्यों की एक संख्या है। इसलिए, एक संपादक भी में शामिल हो गए परियोजनाओं की एक संख्या है।
मैं इस मॉडलिंग और दृढ़ता के लिए भंडार पद्धति का उपयोग कर के लिए एक DDD दृष्टिकोण ले रहा हूँ। हालांकि, मैं निर्धारित करने के लिए मैं यह कैसे करना चाहिए पैटर्न काफी अच्छी तरह से grok नहीं है अभी तक।
मैं इस धारणा है कि संपादक और परियोजना एक ही कुल में संभावित हैं पर काम कर रहा हूँ, रूट संपादक होने के साथ। इसलिए मैं एक संपादक प्राप्त कर सकते हैं और फिर अपनी परियोजनाओं की गणना, और वहाँ से परियोजनाओं 'सदस्य संपादकों की गणना कर सकता है।
हालांकि, अगर मैं सिर्फ अपने भंडार से संपादकों को पुनः प्राप्त करने की अनुमति है, इसका मतलब मैं रिपोजिटरी से सभी परियोजनाओं लोड करने के लिए जब मैं संपादक है कि उन्हें मालिक मिल की जरूरत नहीं है? और अगर मैं सदस्य संपादकों आलसी लोड करना चाहते हैं, परियोजना के रूप में अच्छी तरह से भंडार के लिए एक संदर्भ की जरूरत है?
वैकल्पिक रूप से, अगर मैं कुल विभाजित है और एक संपादक भंडार और एक परियोजना भंडार है, मैं कैसे इस तरह के जब एक नया प्रोजेक्ट एक संपादक में जोड़ा जाता है के रूप में दो भर में लेन-देन, संभाल चाहिए? उदाहरण के लिए:
Editor e = new Editor(Editor Name);
editorRepository.Add(e);
Project p = e.CreateProject(Project Name);
projectRepository.Add(p); // These two lines
editorRepository.Save(e); // should be atomic
मैं भंडार पैटर्न के इरादे बदल रहा हूं?