में एचटीएमएल हेल्पर DisplayFor एक कारण उपयोग करने के लिए बेहतर इनमें से एक है।प्रत्यक्ष Model.Property बनाम उस्तरा
कोई अंतर है?
में एचटीएमएल हेल्पर DisplayFor एक कारण उपयोग करने के लिए बेहतर इनमें से एक है।प्रत्यक्ष Model.Property बनाम उस्तरा
कोई अंतर है?
Model.Property
- जैसा कि आप जानते हैं - केवल प्रश्न में संपत्ति का मूल्य लिखेंगे। दूसरी तरफ Html.DisplayFor(m => m.Property)
, डिस्प्ले टेम्पलेट को कॉल करेगा, जो संपत्ति मूल्य के चारों ओर अन्य मार्कअप प्रस्तुत कर सकता है।
उदाहरण के लिए, यदि आप ऐसा तरह एक प्रदर्शन टेम्पलेट से परिभाषित करें:
@model String
<div class="property-wrapper">
<p>@Model.Property</p>
</div>
आसपास divs का उपयोग करते समय संपत्ति के मूल्य के आसपास रेंडर किया जाएगा DisplayFor
(यदि प्रदर्शन टेम्पलेट चयन किया जाता है, जो आमतौर पर इसका मतलब है संपत्ति का प्रकार मिलान फ़ाइल नाम की संपत्ति के लिए UIHint
विशेषता में निर्दिष्ट किया जाता है है, या स्पष्ट रूप से DisplayFor
करने के लिए कॉल में निर्दिष्ट है।
आप भी अपने प्रदर्शन टेम्पलेट्स में मॉडल मेटाडाटा की पहुंच है जिसका अर्थ है आप की तरह कुछ कर सकते हैं यह:
<div class="property-label">
@Html.DisplayNameForModel()
</div>
<div class="property-value">
@Model.Property
</div>
डिस्प्ले टेम्पलेट्स आपको बड़ी लचीलापन और पुन: प्रयोज्यता प्रदान करते हैं। इसका अन्वेषण करने का सबसे अच्छा तरीका कस्टम टेम्पलेट्स बनाना शुरू करना है और देखें कि यह आपको कहां लेता है।