मेरे समाधान में निम्नलिखित परतें हैं:
- 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
?