मेरे समाधान में निम्नलिखित परतें हैं:
- App.Domain
- App.Service
- App.Core (शायद आप इसे एक App.DataLayer कहते हैं)
- App.Web
सॉफ्टवेयर डिजाइन पैटर्न मेरा सवाल नहीं है, मैं मॉडल में निम्नलिखित है Domain
public class Foo {
public int Id {get;set;}
public int Name {get;set;}
public int Value {get;set;}
}
मैं इस मॉडल का उपयोग दृश्य पर करना चाहता हूं (उदाहरण के लिए होम पेज) और मैं उपयोग करना चाहता हूं Id, Name & Value, इसलिए यदि मैं ViewModel बनाना चाहता हूं, तो मैं निम्नलिखित जोड़ूंगा:
public class FooViewModel {
public int Id {get;set;}
public int Name {get;set;}
public int Value {get;set;}
}
तो, क्या यह अच्छा विचार है? या सिर्फ के Fooबजाय का उपयोग करें FooViewModel?
Modelआम तौर पर करने के लिए पारित कर दियाView? क्यों वास्तव में आप के क्षेत्र पुन: बनाने की जरूरत हैModelमेंView? अगर चिंताओं की जुदाई का एक लक्ष्य हैMVC, किन परिस्थितियों में एक के साथ एक ही बात करने के लिए चाहते हो जाएगा के तहतModelऔरView? यदिViewModelदोनों, यही वजह है कि विस्तार / रचना दोनों से नहींModelऔरView?