हम अपना पहला WPF एप्लिकेशन लिखने जा रहे हैं और MVVM पैटर्न से परिचित हो रहे हैं। हमने कई Winform अनुप्रयोग बनाए हैं और हमारे पास एक वास्तुकला है जो हमारे लिए बहुत सफल रही है। हमें उस आर्किटेक्चर का अनुवाद करने या हमारे आर्किटेक्चर के कुछ टुकड़े एमवीवीएम मॉडल में फिट होने का निर्धारण करने में थोड़ी परेशानी हो रही है।
ऐतिहासिक रूप से हमारे पास एक गुई (मुख्य निर्वासन) है जो तब एक BusinessLogic dll को सूचित करता है। BusinessLogic एक वेब सेवा के माध्यम से DAL dll को सूचित करता है और DAL DB के साथ सहभागिता करता है। DAL, BusinessLogic और GUI सभी एक ही BusinessObjects dll को संदर्भित करते हैं।
एमवीवीएम के लिए कुछ संक्रमण काफी सीधे आगे हैं। हमारे गुई में अभी भी विचार शामिल होंगे, हमारे BusinessOjbects में अभी भी मॉडल होगा और हमारा DAL अभी भी DB के साथ बातचीत करेगा (हालांकि उन्हें लागू करने की तकनीक बदल सकती है)।
जो हम सुनिश्चित नहीं हैं वह हमारा BusinessLogic घटक है। ऐतिहासिक रूप से यह GUI को तब कॉल करने के लिए कार्यों को विचारों में नियंत्रित करने के लिए प्रदान करेगा (यानी। GetCustomerList जो ग्राहक वस्तुओं या विशिष्ट CRUD कार्यों की सूची लौटाएगा)।
हमारे पास मुख्य लटका यह है कि क्या MVVM पैटर्न ViewModels को घर में रखने के लिए एक अतिरिक्त घटक के लिए कॉल करेगा या यदि हम बस अपनी सोच को बदलते हैं और ViewModels के लिए हमारे BusinessLogic घटक के रूप में हमने क्या उपयोग किया है?
क्या हमारा BusinessLogic घटक ViewModels का प्रतिनिधित्व करता है?