मुझे बिंदु (अनजाने में) मिल गया है कि मुझे कुछ हिस्सों में लगता है कि मैं दृश्य (.aspx) के भीतर बहुत अधिक कर रहा हूं, बहुत अधिक स्वरूपण, concatenation, एक जगह में थोड़ा regex प्रतिस्थापन।एएसपी.NET एमवीसी में मॉडल देखना चाहिए सभी तारों?
मैं एक नए हिस्से पर काम करना शुरू कर रहा था और अपना दृष्टिकोण सुधारने की कोशिश कर रहा था .. फिर यह मुझे मारा, मैं अपने सभी व्यू मॉडल (इन/मॉडल/वेब पेज में) स्ट्रिंग्स या सूची क्यों नहीं बना रहा एक धक्का पर स्ट्रिंग का। नोट: मैं अपने मॉडल/डोमेन का जिक्र नहीं कर रहा हूं, बल्कि विशेष रूप से मेरे व्यूमोडेल का उल्लेख कर रहा हूं।
public class FinanceQuoteView
{
public string Provider;
public string Broker; // rather than Broker == null ? "N/A" : Broker.ToUpperCase();
public string Monthly; // rather than Monthly.ToString("C")
public string PaymentTerm; // rather than "1+" + PaymentTerm.ToString();
public string FreeInsurance; // rather than insuranceIncluded ? "Yes" : "No";
public string[] Restrictions;
}
फ़ॉर्म सबमिशन के लिए (जोड़ने, संपादित) मैं एक अलग दृश्य मॉडल नियंत्रक कार्रवाई (प्रपत्र मॉडल यदि आप में/मॉडल/बनेगी) को खिलाने के लिए इस्तेमाल करते हैं। तो FinanceQuoteForm में द्विआधारी आदि शामिल है ... एक बांधने की मशीन के माध्यम से बनाया गया।
हर कोई इस दृष्टिकोण के बारे में क्या सोचता है? मॉडल को देखने के लिए डोमेन से मैपिंग में। टोस्टिंग ("सी") कर रहा है?
वह डोमेन मॉडल के बारे में बात नहीं कर रहा है - वह व्यू मॉडल के बारे में बात कर रहा है। –
मार्क। सही बात। मैं अपने मॉडल का जिक्र नहीं कर रहा हूं। मैं विशेष रूप से अपने व्यू मॉडल का जिक्र कर रहा हूं कि मेरे नियंत्रक क्रियाएं उत्पन्न होती हैं (या तो मैन्युअल रूप से, ऑटोमैपर या जो कुछ भी - छोटे इंपोर्ट विवरण) और प्रतिपादन के लिए दृश्य को भेजें। –
मैं सीके पर सहमत हूं, मॉडल देखें "प्रारूप" डेटा वाला एक है। केवल तारों को पार करके, आप डेटा को प्रारूपित करने के लिए मॉडल को देखने का मौका खो देते हैं। मेरे पास एक साधारण उदाहरण हो सकता है, यह है कि यदि आप मॉडल को देखने के लिए स्ट्रिंग के रूप में "दिनांक" पास करते हैं, तो आपको अमेरिकी विज़िटर या यूके विज़िटर को सामग्री की सेवा करने के लिए नियंत्रक में आगे हेरफेर की आवश्यकता होती है। – xandy