टैगहेल्पर्स और व्यू कॉम्पोनेंट्स के बीच निश्चित रूप से कुछ वैचारिक ओवरलैप है। टैगहेल्पर एचटीएमएल के साथ काम करने के लिए आपकी उपयोगिता हैं, जहां व्यू कॉम्पोनेंट्स सी # से चिपकने का अपना तरीका हैं, अलग काम करें और फिर HTML को थूक दें। मैं विस्तार से प्रत्येक में जानकारी प्राप्त करेंगे:
ViewComponents
आपका धारणात्मक बराबर मिनी नियंत्रक; आप देखेंगे कि ViewComponents का खुलासा करने वाले कई तरीकों/गुणों को नियंत्रक पर मौजूद लोगों से बहुत परिचित हैं। अब ViewComponents का आह्वान करने के लिए, यह एचटीएमएल हेल्पर्स का उपयोग करने के बराबर है (एक चीज टैगहेल्पर बेहतर बनाती है)। ViewComponents को सारांशित करने के लिए: उनका प्राथमिक उद्देश्य नियंत्रक की तरह महसूस करना है, सी # भूमि में रहना (HTML में उपयोगिता जोड़ने की कोई आवश्यकता नहीं हो सकती है), छोटे/पृथक काम करें और फिर स्ट्रिंग किए गए HTML को थूक दें।
TagHelpers
एक उपयोगिता है कि आप पक्ष मौजूदा HTML के साथ काम करते हैं या नए HTML तत्वों को संशोधित एक पृष्ठ पर क्या होता है बनाने के लिए सक्षम बनाता है। ViewComponents के विपरीत TagHelpers किसी मौजूदा HTML को लक्षित कर सकते हैं और इसके व्यवहार को संशोधित कर सकते हैं; उदाहरण: आप सशर्त सभी एचटीएमएल तत्वों को विशेषता दे सकते हैं जो सशर्त रूप से तत्व सर्वर पक्ष को प्रस्तुत करेंगे। TagHelpers भी, पूर्व आप आम HTML शर्तों मिलाना करने की अनुमति:
<myTagHelper class="btn">Some Content</myTagHElper>
आप हम अपने TagHelper करने के लिए एक वर्ग विशेषता जोड़ रहे हैं बस के रूप में अगर यह एचटीएमएल थे देख सकते हैं। ViewComponents में ऐसा करने के लिए, आपको विशेषताओं के शब्दकोश या कुछ समकक्ष (अप्राकृतिक) में गुजरना होगा। अंततः एकाधिक टैगहेल्पर एक HTML तत्व पर चल सकते हैं; प्रत्येक को आउटपुट संशोधित करने पर अपना मंच होता है (मॉड्यूलर टैगहेल्पर टूलकिट के लिए प्रवेश की अनुमति देता है)। टैगहेल्पर्स को योग करने के लिए: वे कुछ भी कर सकते हैं जो ViewComponents कर सकते हैं और अधिक लेकिन कंट्रोलर जैसी चीजों से परिचित न हों जो एएसपी.नेट डेवलपर्स का उपयोग किया जाता है; कुछ परियोजनाएं सर्वर साइड एचटीएमएल को अंतःस्थापित नहीं करना चाहती हैं।
अतिरिक्त:
मैं हाल ही में एक वीडियो TagHelpers के लाभ का प्रदर्शन किया था। मूल रूप से वे किस चीज पर अच्छे होते हैं और उनका उपयोग कैसे करें। आप इसे here देख सकते हैं।
स्रोत
2014-12-10 19:44:42
आप अपने व्यू कॉम्पोनेंट को कस्टम टैगहेल्पर में [यहां वर्णित] के रूप में लपेट सकते हैं (https://stackoverflow.com/questions/44913297/is-it-possible-to-call-viewcomponent-from-custom-taghelper-in- एएसपी निवल MVC-6)। इस तरह आप टैगहेल्पर के अंदर HTML मार्कअप तक पहुंच पाएंगे और आवश्यकता होने पर इसे ViewComponent में पास कर पाएंगे। – IlliakaillI