दृढ़ता से टाइप करने के लिए हम @model
और @inherit
का उपयोग कर सकते हैं। क्या आप कृपया मुझे बता सकते हैं कि दोनों के बीच क्या अंतर है?एमवीसी 4 रेजर अंतर @model और @inherit में हेडर देखें?
संपादित करें:
कृपया this example देखते हैं।
दृढ़ता से टाइप करने के लिए हम @model
और @inherit
का उपयोग कर सकते हैं। क्या आप कृपया मुझे बता सकते हैं कि दोनों के बीच क्या अंतर है?एमवीसी 4 रेजर अंतर @model और @inherit में हेडर देखें?
संपादित करें:
कृपया this example देखते हैं।
अंतर इस प्रकार है: यदि आपका विचार WebViewPage<T>
से प्राप्त होता है तो आपका मॉडल निर्देश T
पर इंगित करता है। http://weblogs.asp.net/scottgu/archive/2010/10/19/asp-net-mvc-3-new-model-directive-support-in-razor.aspx
इसका मतलब है कि @@ विरासत केवल System.Web.Mvc.WebviwPage
@ user576510: '@ model' का अर्थ यह भी है कि पृष्ठ 'WebViewPage' से प्राप्त होता है। जो आप निर्दिष्ट करते हैं वह सामान्य पैरामीटर है। –
'मॉडल 'निर्देश काम नहीं कर रहा था क्योंकि कस्टम वर्चुअल प्रदाता का उपयोग करके मेरे पास एक अलग परियोजना में मेरे विचार हैं। '@ विरासत 'एक आकर्षण और हल घंटों या इंटरनेट खुदाई की तरह काम किया। धन्यवाद। :-) – Maxime
वे ही कर रहे हैं (यानी दृढ़ता से टाइप संकेत मॉडल वर्ग) लेकिन @inherit
है:
दूसरे शब्दों में, इन दो बराबर
@inherits System.Web.Mvc.WebViewPage<ModelClass>
और
@model ModelClass
संदर्भ हैं अधिक verbose (पूर्ण पथ की वजह से)। @inherit
ऐसा करने का एकमात्र तरीका था जब रेजर को पहली बार पेश किया गया था (एमवीसी 3 मुझे लगता है कि प्री-रिलीज), लेकिन मैंने इसे वर्षों तक इस्तेमाल नहीं देखा है।
मुझे यह मिला लेकिन बात यह है कि उन्हें @@ मॉडल पेश करने की आवश्यकता क्यों है? मैं विश्वास नहीं कर सकता कि दोनों एक ही काम करते हैं। – user576510
विकटोर के उत्तर में लिंक यह बेहतर बताता है कि मैं कर सकता था। –
वाह! @inherit! सही समय पर! धन्यवाद; मुझे उत्तर नहीं पता; लेकिन आपका सवाल मेरा जवाब था! :) –