मैंने अभी अपना पहला एएसपी.नेट एमवीसी (2) सीएमएस समाप्त कर लिया है। अगला कदम वेबसाइट बनाना है जो सीएमएस के डेटाबेस से डेटा दिखाएगा। - प्रदर्शित करता है लेख श्रेणियोंasp.net mvc2 - मास्टर पेज और कोड संगठन के लिए नियंत्रक
http://img56.imageshack.us/img56/4676/portal.gif http://img56.imageshack.us/img56/4676/portal.gif
# 1 (लाल बॉक्स): यह वेबसाइट डिजाइन है। ViewModel:
public class CategoriesDisplay
{
public CategoriesDisplay() { }
public int CategoryID { set; get; }
public string CategoryTitle { set; get; }
}
# 2 (ब्राउन बॉक्स) - प्रदर्शित करता है पिछले एक्स लेख; हरे रंग के बॉक्स # 3 से उन्हें छोड़ देता है। Viewmodel:
public class ArticleDisplay
{
public ArticleDisplay() { }
public int CategoryID { set; get; }
public string CategoryTitle { set; get; }
public int ArticleID { set; get; }
public string ArticleTitle { set; get; }
public string URLArticleTitle { set; get; }
public DateTime ArticleDate;
public string ArticleContent { set; get; }
}
# 3 (हरे बॉक्स) - प्रदर्शित करता है पिछले एक्स लेख। आने वाली घटनाओं की सूची दर्शाता है - के रूप में भूरे रंग के बॉक्स # 2
# 4 (नीले बॉक्स) ही ViewModel उपयोग करता है। dataContext.Model.Event
का उपयोग ViewModel
बॉक्स # 1, # 2 और # 4 साइट पर दोहराए जाएंगे और वे मास्टर पेज का हिस्सा हैं। तो, मेरा सवाल यह है कि: इस डेटा को मॉडल से कंट्रोलर में स्थानांतरित करने और अंत में पृष्ठों को देखने का सबसे अच्छा तरीका क्या है?
- मैं मास्टर पेज और ViewModel वर्ग के लिए एक नियंत्रक कि यह सब वर्गों को एक साथ लपेट या
- मैं इन बक्सों का हर के लिए आंशिक दृश्य बनाना चाहिए और उनमें से प्रत्येक कर देगा उचित वर्ग वारिस बना दें (अगर यह भी संभव है यह इस तरह से काम करता है कि?) या
- मैं सभी नियंत्रकों में यह बार-बार कोड रखना चाहिए और जो शायद wor होगा ViewData, के माध्यम से सभी अतिरिक्त आंकड़ा अंतरण से रास्ता :) या
- शायद एक बेहतर और अधिक सरल तरीका है लेकिन मुझे यह नहीं पता/देख रहा है?
अग्रिम धन्यवाद, इले
संपादित करें:
आपका जवाब # 1 है, तो कैसे मास्टर पेज के लिए एक नियंत्रक बनाने के लिए कृपया समझा!
संपादित करें 2:
इस ट्यूटोरियल में वर्णन किया गया है अमूर्त वर्ग का उपयोग कर मास्टर पृष्ठ पर डेटा भेजने का तरीका: में http://www.asp.net/LEARN/mvc/tutorial-13-cs.aspx
"लिस्टिंग 5 - नियंत्रकों \ MoviesController.cs", डेटा सीधे डेटाबेस से का उपयोग कर लिया गया है LINQ, भंडार से नहीं। तो, मुझे आश्चर्य है कि यह सिर्फ इस ट्यूटोरियल में है, या यहां कुछ चाल है और भंडार का उपयोग नहीं किया जा सकता/नहीं?
क्या एमवीसी में दृढ़ता से टाइप किया गया मास्टर पेज बनाना संभव है? –
मैं यह प्रश्न भी जानना चाहूंगा कि यह प्रश्न –
मास्टर पेज पर डेटा पास करने का उत्तर यहां है: http://www.asp.net/LEARN/mvc/tutorial-13-cs.aspx –