मुझे कुछ एमवीपी स्टफ के आसपास अपना सिर लेने की कोशिश करने में कुछ मजा आता है, क्योंकि यह उपयोगकर्ता नियंत्रण से संबंधित है। मैं .NET WinForms (या इसके करीब कुछ) का उपयोग कर रहा हूं और कंट्रोलर पैटर्न का पर्यवेक्षण कर रहा हूं (ठीक है, मुझे लगता है कि मैं हूं :)।एमवीपी और उपयोगकर्ता नियंत्रण और आमंत्रण
उपयोगकर्ता नियंत्रण स्वयं एमवीपी आवेदन का हिस्सा है (इसका दृश्य और संबंधित प्रेजेंटर आदि है)। प्रस्तुतकर्ता हमेशा पहले शुरू होता है, और यह मॉडल (ओं) शुरू करता है और फिर दृश्य (ओं) शुरू करता है। व्यू अपना यूआई बनाता है, जिसका हिस्सा यूसी को नया होगा, जो व्यू है।
अब (फॉर्म) प्रस्तुतकर्ता को यूसी प्रेजेंटर के बारे में जानना आवश्यक है, लेकिन मुझे लगता है कि यह दृश्य के बारे में कुछ भी नहीं जानता है। प्रपत्र प्रस्तुतकर्ता उदाहरण के लिए नहीं जानता कि यूसी फॉर्म के नियंत्रण संग्रह का हिस्सा है, न ही इसे चाहिए।
इसके अलावा, डिज़ाइन अनुभव को बदला नहीं जाना चाहिए; IOW व्यू (फॉर्म) का देव बस टूलबॉक्स से उपयोगकर्ता नियंत्रण का चयन करने और इसे किसी फ़ॉर्म पर छोड़ने में सक्षम होना चाहिए।
तो, मेरे प्रश्नों पर। सबसे पहले, मेरी धारणाएं सही से ऊपर हैं? कुछ हद तक गुमराह? गड़बड़? डब्ल्यूटीएफ क्या आप सोच रहे हैं?
दूसरा, क्या यह सही है (पर्याप्त?) फॉर्म देखने के लिए यूसी व्यू का आह्वान करें, और प्रपत्र प्रेजेंटर यूसी प्रेजेंटर का आह्वान करता है और यूसी को यह बताने के लिए कुछ तंत्र है कि इसका प्रेजेंटर क्या है? यह मेरे "प्रस्तुतकर्ता पहले" नियम को तोड़ता है, लेकिन मुझे यकीन नहीं है कि यह और कैसे करें।
कोई अन्य विचार, सुझाव, टिप्पणियां खुशी से स्वीकार की गईं।
- nwahmaet
कॉन्फ़िगरेशन के कोड उदाहरण से प्यार होगा 3. – Llyle
यदि कोई प्रदान किया जा सकता है तो यह सुंदर होगा।मेरे पास अधिक जटिल Winforms में एमवीपी पैटर्न को कार्यान्वित करने के बारे में विवरण खोजने में इतनी मुश्किल समय है ... –
मुझे वेब फ़ॉर्म में उपयोगकर्ता नियंत्रण के साथ एक ही समस्या है। पृष्ठ और प्रत्येक उपयोगकर्ता नियंत्रण में अपने स्वयं के विशिष्ट और डिस्कनेक्ट किए गए प्रस्तुतकर्ता होते हैं। प्रत्येक प्रस्तुतकर्ता के लिए समान अंतर्निहित डेटा इकाई लोड करना काफी संभव है। यद्यपि पैटर्न में उत्कृष्ट कोड पुन: उपयोग किया गया है, लेकिन यह स्पष्ट रूप से डेटाबेस को हिट करता है जितना इसकी आवश्यकता होनी चाहिए। – Junto