मेरे पास दो दृश्य हैं जो कुछ व्यूमोडेल से एक अवलोकन संग्रह साझा करते हैं, लेकिन विभिन्न संग्रह दृश्य पैरामीटर के साथ। एमवीवीएम लाइट में इसे लागू करने का सही तरीका क्या है? क्या गैर स्थैतिक वीएम के लिए कोई समर्थन है? मैं अपने जीवनकाल का प्रबंधन कैसे कर सकता हूं और उनका निपटान कैसे कर सकता हूं?स्टेटिक व्यू मॉडल्स बनाम इंस्टेंटेड व्यूमोडल्स
6
A
उत्तर
0
लॉरेन के examples of MVVM Light में से कुछ स्थिर दृश्य मॉडल उदाहरणों (सिंगलटन-जैसी) के साथ व्यूमोडेल लोकेटर का उपयोग करते हैं। ICleanup
इंटरफ़ेस पर ध्यान दें। इसके अलावा, गैर स्थैतिक वीएम को आमतौर पर व्यू के कन्स्ट्रक्टर में एमईएफड किया जाना चाहिए या बनाया जाना चाहिए।
0
व्यू मॉडेल प्रबंधन आमतौर पर आईओसी पैटर्न का उपयोग करते हैं। एमवीवीएम लाइट फ्रेमवर्क में यह एक सरल कार्यान्वयन है।
मैं Ninject का उपयोग करना पसंद - http://www.ninject.org/
1
नहीं है!
सरलआईक से हल की गई डिफ़ॉल्ट वस्तुएं सिंगलेट हैं। इसके आस-पास पहुंचने के लिए आपको ServiceLocator.GetInstance विधि के पैरामीटर के रूप में एक अद्वितीय पहचानकर्ता को पास करने की आवश्यकता है।
नीचे देखें:
हम एक ही viewmodel लौटने दो गुण होते हैं। एक सिंगलटन देता है और दूसरा हर बार एक नया उदाहरण लौटाएगा।
class ViewModelLocator
{
static ViewModelLocator()
{
ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default);
if (ViewModelBase.IsInDesignModeStatic)
{
SimpleIoc.Default.Register<IDataService, Design.DesignDataService>();
}
else
{
SimpleIoc.Default.Register<IDataService, DataService>();
}
SimpleIoc.Default.Register<MainViewModel>();
SimpleIoc.Default.Register<SecondViewModel>();
}
public MainViewModel MainAsSingleton
{
get { return ServiceLocator.Current.GetInstance<MainViewModel>(); }
}
public MainViewModel MainAsDiffrentInstanceEachTime
{
get { return ServiceLocator.Current.GetInstance<MainViewModel>(Guid.NewGuid().ToString()); }
}
}
संबंधित मुद्दे
- 1. व्यू मॉडल्स और प्रतिपादन
- 2. डब्ल्यूपीएफ एमवीवीएम लाइट यूनिट परीक्षण व्यू मॉडल्स
- 3. व्यूमोडल्स
- 4. गैर-स्टेटिक कक्षा बनाम स्टेटिक क्लास बनाम स्टेटिक विधि (सी #)
- 5. एमवीसी 3 ModelState.IsValid एकाधिक व्यूमोडल्स
- 6. यूआई थ्रेडिंग व्यूमोडल्स
- 7. व्यूमोडल्स, एडिटमोडल्स और ऑटोमैपर
- 8. स्टेटिक वैरिएबल बनाम अस्थिर
- 9. कार्य बनाम स्टेटिक तरीके
- 10. जावा स्टेटिक बनाम इंस्टेंस
- 11. कॉन्स बनाम स्टेटिक कॉन्स
- 12. स्टेटिक बनाम वैश्विक
- 13. स्टेटिक बनाम गतिशील एसक्यूएल
- 14. स्टेटिक विधि बनाम अजगर
- 15. एएसपी.नेट एमवीसी: नेस्टिंग व्यू मॉडल्स एक दूसरे के भीतर, एंटीपाटर या नहीं?
- 16. ग्रिड व्यू बनाम डेटालिस्ट बनाम रिपेटर बनाम लिस्ट व्यू
- 17. जावा: स्टेटिक बनाम आंतरिक वर्ग
- 18. नेट बनाम स्टेटिक कन्स्ट्रक्टर .Net
- 19. पीएचपी: सिंगलटन बनाम स्टेटिक कक्षा
- 20. स्टेटिक बनाम गतिशील लाइब्रेरी प्रदर्शन
- 21. स्टेटिक कार्यों बनाम स्थिरांक कार्यों
- 22. लिस्प बनाम अजगर - स्टेटिक संकलन
- 23. स्टेटिक बनाम गैर स्टेटिक फ़ंक्शन - एम्बेडेड सिस्टम संदर्भ डीबगिंग
- 24. मॉडल परिवर्तन और इसके विपरीत जब एमवीवीएम नेस्टेड व्यू मॉडल्स को कैसे अपडेट करें?
- 25. एमवीवीएम: नेस्टेड व्यू मॉडल्स के बीच बातचीत को कैसे संभाला जाए?
- 26. व्यू बनाम नई तालिका
- 27. एंड्रॉइड बनावट व्यू बनाम वीडियो व्यू प्रदर्शन
- 28. सिंक में मॉडल और व्यू मॉडल्स को रखने के लिए सर्वोत्तम अभ्यास
- 29. एमवीसी मैपिंग व्यूमोडल्स को पीओसीओ
- 30. क्या वीपीएपीआई नियंत्रक रिटर्न व्यूमोडल्स
क्या आप एक डीआई कंटेनर जैसे यूनिटी या एमईएफ का उपयोग कर रहे हैं? – PVitt
नहीं, मैं मूल एमवीवीएम लाइट टेम्पलेट का उपयोग करता हूं। –