विजुअल स्टूडियो: मैं बेस क्लास से विरासत में मिली सभी कक्षाओं को कैसे दिखाऊँ?


139

विज़ुअल स्टूडियो में, मैं बेस क्लास से विरासत में मिली सभी कक्षाओं को कैसे दिखाऊँ?

उदाहरण के लिए , ASP.NET MVC में कई ' ActionResult ' प्रकार होते हैं - और ये सभी बेस क्लास से इनहेरिट / कार्यान्वित होते हैं ActionResult

ऐसा लगता है कि जब तक आप सिर्फ 'जानते' हैं Viewऔर Jsonमान्य ActionResultप्रकार हैं, ऐसा कोई तरीका नहीं है जिससे आप आसानी से इस जानकारी को पा सकें।

कृपया मुझे गलत साबित करें।

क्या ऑब्जेक्ट ब्राउज़र में कुछ ऐसा है जो यह पता लगाना आसान बनाता है?

मैं विभिन्न वर्गों के बारे में इस जानकारी को खोजने के लिए विजुअल स्टूडियो के बाहर के उपकरणों के सुझावों के लिए भी तैयार हूं। उदाहरण के लिए: क्या रेस्पर में कोई ऐसी चीज है जो मेरी मदद करेगी?


2
दृश्य C # 2010 एक्सप्रेस के साथ मैं ": ActionResult" के लिए समाधान खोजता हूं। आदर्श नहीं, लेकिन कुछ भी नहीं से बेहतर।
योयो

2
मुझे लगता है कि आप मेरे सवाल को गलत समझ रहे हैं। JsonResult (संदर्भ यहाँ: msdn.microsoft.com/en-us/library/system.web.mvc.jsonresult.aspx ) ActionResult से विरासत में मिला है। कई अन्य वर्ग हैं जो ActionResult से विरासत में मिले हैं। ActionResult से सभी वर्गों को देखने का एक आसान तरीका क्या है?
दान एस्परज़ा

3
इस स्थिति में, मैं जिस कोड का उपयोग कर रहा हूं वह कोड नहीं है जो सीधे मेरे समाधान में दिखाई देता है। वे एक अन्य विधानसभा में एमवीसी ढांचा वर्ग हैं। किसी विधानसभा के लिए उपयोग किए जाने वाले किसी भी कोड के लिए ": ActionResult" की खोज करना काम नहीं करेगा।
दान एस्पारज़ा

जवाबों:


50

ज़रूर, Resharper यह कर सकता है। और भी बहुत कुछ।

किसी भी स्थान पर टाइप नाम पर राइट क्लिक करें और संदर्भ मेनू में "गो टू इनहिटर" चुनें। ओवरहाइड पर नेविगेट करने और एक इंटरफ़ेस विधि के कार्यान्वयन के लिए "गो टू इनहिटर" को भी लागू किया जा सकता है। एक इंटरफ़ेस के लिए आप "फाइंड यूजेज एडवांस्ड" को फिर से कॉल कर सकते हैं, बस राइट क्लिक करें) जहां सभी विस्तार और कार्यान्वयन मिलेंगे। एक प्रकार के लिए - व्युत्पन्न प्रकार। और मेरी पसंदीदा विशेषता - इसकी घोषणा पर नेविगेट करने के लिए किसी भी प्रकार / विधि पर नियंत्रण रखने के साथ क्लिक करें।

मुझे लगता है कि यह .net डेवलपर्स के लिए एक टूल होना चाहिए।


रेसपेरर 9.2 में, सोर्स कोड में किसी भी प्रकार पर, "फाइंड यूज एडवांस्ड एडवांस्ड" पर क्लिक करें, फाइंड = "डिराइव्ड" और स्कोप = "सॉल्यूशंस एंड लाइब्रेरी" चुनें।
उदाहरण के लिए, किसी भी विक्रेता से शामिल DLL में कुछ बेस क्लास के सभी इनहेरिटर्स (लाइब्रेरी और आपके कोड दोनों) को खोजने के लिए, उस बेस क्लास के साथ अपने कोड में एक चर घोषित करें। फिर उस आधार वर्ग के नाम पर राइट-क्लिक करें जिसे आपने अभी टाइप किया है।


6
कितनी शर्म की बात है। जावा डेवलपर जो मुफ्त ग्रहण का उपयोग करते हैं, उनके पास यह कार्यक्षमता बॉक्स से बाहर है। मेरे Resharper + VS2015 में, मुझे "गो टू इनहेरिटर" के बजाय "कार्यान्वयन पर जाएं" देखें।
उत्तरी ध्रुव

1
लेकिन यह मुझे कक्षाएं बीच में नहीं देता, केवल छोड़ देता है। CTRL + ALT + B उत्तर देगा।
उत्तरी ध्रुव

2
विजुअल स्टूडियो 6 के पास लगभग 20 साल पहले C ++ प्रोजेक्ट्स पर था। ऑब्जेक्ट ब्राउज़र और क्लास आरेख वंशानुक्रम के पेड़ों को पलटने के लिए एक ही हल्के वजन की क्षमता प्रदान नहीं करते हैं। मैंने हाल ही में पाया कि एक्लिप्स का एक बड़ा संस्करण है, जिसमें जावा कम से कम है। एमएस पर आओ, अपने एक पूर्व डेवलपर्स को फोन करें और पूछें कि वह क्या था जो आपने खो दिया था ... लेकिन यह स्वीकार किया कि सभी परियोजनाओं के लिए आवश्यक बीएससी ब्राउज़ डेटा संकलन विकल्प के बाद होना आवश्यक था, लेकिन यह ठीक था। यह वास्तव में था।
फिलिप बेक

150

VS2012 के लिए,

  1. समाधान एक्सप्लोरर में फाइल करने के लिए नेविगेट करें
  2. अपनी कक्षा का विस्तार और चयन करें
  3. क्लास आइटम (फ़ाइल आइटम नहीं) पर राइट क्लिक करें -> व्युत्पन्न प्रकार

9
यह स्रोत कोड आपने लिखा है। मूल प्रश्न में बताए गए उदाहरण के साथ यह कैसे काम करेगा? (एक्शनटाइटल प्रकार)
दान एस्पेरज़ा

यदि आपके पास कोई भी प्रकार है जो ActionResult से निकला है, तो आप अपने प्रकार पर राइट-क्लिक कर सकते हैं और बेस प्रकार का चयन कर सकते हैं, जो आपको ActionResult पर ले जाएगा, जिस पर आप अब राइट-क्लिक कर सकते हैं और व्युत्पन्न प्रकार का चयन कर सकते हैं। (यदि आपके पास कोई प्रकार नहीं है जो ActionResult से निकला है तो आप अपने तरीके से वापस System.Object और फिर ActionResult पर काम कर सकते हैं।)
yoyo

21
आप में से उन लोगों के लिए, जो मेरी तरह हैं, ने क्लास की कोड फ़ाइल पर राइट क्लिक किया और इस बात पर अड़ गए कि "व्युत्पन्न प्रकार" मेनू विकल्प क्यों नहीं था: याद रखें कि आपको क्लास आइटम को प्रकट करने के लिए पहले कोड फ़ाइल आइटम का विस्तार करना होगा - फिर दाएँ क्लिक करें।
BCA

3
मैं वीएस 2017 का उपयोग कर रहा हूं। दुर्भाग्य से, यह केवल उन वर्गों को दिखाता है जो एक ही विधानसभा में मौजूद हैं, यह संपूर्ण समाधान नहीं दिखाता है।
नाइटऑवल 88

4
यह अजीब है कि यह कार्यक्षमता समाधान एक्सप्लोरर में कैसे मौजूद है, लेकिन क्लास व्यू नहीं।
दाई

73

इसके लिए आपको रिफ्लेक्टर की आवश्यकता नहीं है - विजुअल स्टूडियो का "क्लास डायग्राम" दृश्य आपको किसी विशेष वर्ग के लिए सभी व्युत्पन्न वर्गों को आसानी से ढूंढने देगा। "क्लास व्यू" में कक्षा पर राइट क्लिक करें और "क्लास व्यू देखें" चुनें। यदि आरेख आपको पदानुक्रम के लिए इच्छित विवरण का स्तर नहीं दिखाता है, तो आरेख में वर्ग के लिए बॉक्स पर राइट क्लिक करें, और "दिखाएँ व्युत्पन्न कक्षाएं" चुनें।

आप के रूप में Resharper के रूप में प्रत्यक्ष नहीं हो सकता है, लेकिन यह एक विकल्प है अगर आप R # पहले से ही नहीं है।

दुर्भाग्य से, मैं निश्चित नहीं हूं कि विजुअल स्टूडियो के कौन से विशेष संस्करण हैं।


15
यह आपको केवल अपने समाधान के भीतर की कक्षाओं को देखने देगा जो लक्ष्य वर्ग / इंटरफ़ेस को इनहेरिट / कार्यान्वित करता है। हालांकि जानकर अच्छा लगा।
मार्कस जार्डेरॉट

क्या आप इस विधि की सीमाओं के बारे में जानते हैं? क्योंकि यह मुझे सभी उपवर्गों को देखने की अनुमति नहीं देता (ऐसा लगता है कि यह केवल उन उपवर्गों को दिखाता है जो किसी भी अतिरिक्त इंटरफेस को लागू नहीं करते हैं)।
सर्ज

1
मुझे यह कहते हुए एक त्रुटि मिली "वर्तमान परियोजना में XXX से व्युत्पन्न कोई प्रकार नहीं हैं", इसलिए मुझे लगता है कि यह वर्तमान परियोजना के प्रकारों तक सीमित है, समाधान नहीं
एंडी

क्या मैं "शो की गई कक्षाएं" पुनरावृत्ति कर सकता हूं? या मुझे स्पष्ट रूप से हर उप वर्ग पर "व्युत्पन्न वर्ग दिखाएं" का चयन करना होगा?
जेम्स विर्ज़बा

15

यह कम से कम आलसी जवाब है (मुझे इस जवाब पर गर्व है :)

मेरे पास रेस्पर नहीं है, पहले भी कोशिश की थी लेकिन इसे खरीदना नहीं चाहता था। मैंने एक वर्ग आरेख की कोशिश की, लेकिन बिल्कुल भी व्यावहारिक नहीं है क्योंकि पदानुक्रम आरेख दुनिया में 3 गुना अधिक है और मेरे लैपटॉप की स्क्रीन में अनंत चौड़ाई नहीं है। इसलिए मेरा प्राकृतिक और आसान उपाय यह था कि किसी विधानसभा में टाइप करने के लिए कुछ विंडोज फॉर्म कोड लिखें और एक पेड़ के दृश्य में नोड्स जोड़ने के लिए प्रतिबिंब का उपयोग करें, इस प्रकार है:

कृपया मान लें कि आपके पास एक टेक्स्ट बॉक्स, एक ट्री व्यू और अन्य आवश्यक चीजें हैं, जिस पर यह कोड चलता है

//Go through all the types and either add them to a tree node, or add a tree
//node or more to them depending whether the type is a base or derived class.
//If neither base or derived, just add them to the dictionary so that they be
//checked in the next iterations for being a parent a child or just remain a
//root level node.

var types = typeof(TYPEOFASSEMBLY).Assembly.GetExportedTypes().ToList();
Dictionary<Type, TreeNode> typeTreeDictionary = new Dictionary<Type, TreeNode>();
foreach (var t in types)
{
    var tTreeNode = FromType(t);
    typeTreeDictionary.Add(t, tTreeNode);

    //either a parent or a child, never in between
    bool foundPlaceAsParent = false;
    bool foundPlaceAsChild = false;
    foreach (var d in typeTreeDictionary.Keys)
    {
        if (d.BaseType.Equals(t))
        {
            //t is parent to d
            foundPlaceAsParent = true;
            tTreeNode.Nodes.Add(typeTreeDictionary[d]);
            //typeTreeDictionary.Remove(d);
        }
        else if (t.BaseType.Equals(d))
        {
            //t is child to d
            foundPlaceAsChild = true;
            typeTreeDictionary[d].Nodes.Add(tTreeNode);
        }
    }

    if (!foundPlaceAsParent && !foundPlaceAsChild)
    {
        //classHierarchyTreeView.Nodes.Add(tn);
    }
}

foreach (var t in typeTreeDictionary.Keys)
{
    if (typeTreeDictionary[t].Level == 0)
    {
        classHierarchyTreeView.Nodes.Add(typeTreeDictionary[t]);
    }
}

StringBuilder sb = new StringBuilder();
foreach (TreeNode t in classHierarchyTreeView.Nodes)
{
    sb.Append(GetStringRepresentation(t, 0));
}
textBox2.Text = sb.ToString();

2
एक शांत कोड उदाहरण के लिए +1। अन्य विधानसभाओं में आधार वर्गों और व्युत्पन्न वर्गों के बारे में क्या?
टूलमेकरसैट

@ToolmakerSteve, कैसे AppDomain.CurrentDomain.GetAssemblies()? इस पर एक नज़र डालें: stackoverflow.com/questions/851248/…
Mzn

14

'विज़ुअल स्टूडियो 2015 अपडेट 1' से शुरू करके आप क्लास कोड एडिटर में क्लास के नाम पर राइट क्लिक कर सकते हैं और फिर संदर्भ मेनू से 'गो टू इंप्लीमेंटेशन' चुनें: Ctrl + F12 शॉर्टकट के साथ।

अधिक जानकारी के लिए https://blogs.msdn.microsoft.com/dotnet/2015/11/30/whats-new-in-visual-studio-update-1-for-net-managed-languages/ देखें ।


1
मैं टिप की सराहना करता हूं, लेकिन मुझे यकीन नहीं है कि यह आधार वर्ग से सभी विरासत वाले वर्गों को देखने के मेरे मूल उपयोग के मामले को संबोधित करता है।
दान एस्पारज़ा

3
@DanEsparza: यह करता है, कम से कम VS2017 में। इसलिए मैंने जवाब दिया
जोओ एंट्यूस

1
यह अच्छा है। दुर्भाग्य से, पदानुक्रम पेड़ नहीं दिखाता है ... मैं बस एक ही पेड़ के स्तर में सभी को सूचीबद्ध करता हूं।
लोम्बास

और जैसा कि नाम हमेशा फर्जी है, मेरी खोज / उपयोग के दौरान इसे पूरी तरह से अनदेखा कर दिया गया, इसे खोजने के लिए स्टैकऑवरफ्लो में आना पड़ा!
मंद 8

10

किसी ने अभी तक इसका उल्लेख नहीं किया है, इसलिए मैं इसे जोड़ूंगा।
Jetbrains dotPeek एक नि: शुल्क है। .NET डिकंपाइलर में इस जानकारी को आसानी से दिखाने की शक्ति है।

मुफ्त डाउनलोड: http://www.jetbrains.com/decompiler/

Jetbrains कंपनी है जो Resharper बनाती है।

व्युत्पन्न वर्ग खोजने के लिए कदम:

  1. डॉटपेक शुरू करें
  2. 'GAC से खोलें ...' चुनें और System.Web.MVC असेंबली जोड़ें
  3. 'नेविगेट / जाने के लिए टाइप करें' चुनें और टाइप करें ActionResult
  4. पर ActionResultवर्ग घोषणा, राइट-क्लिक करें और 'व्युत्पन्न प्रतीकों'
  5. देखा! हर एक व्युत्पन्न वर्ग दिखाया गया है (यहां तक ​​कि कुछ के बारे में मुझे नहीं पता था!)

7

यह मानते हुए कि आपके पास Resharper स्थापित है: वर्ग / इंटरफ़ेस पर कर्सर के साथ, राइट क्लिक - निरीक्षण - पदानुक्रम

यह उपवर्ग, कार्यान्वयन और सुपरक्लास दिखाता है।


हम्म् ... दिलचस्प, लेकिन वह नहीं जो मैं देख रहा था। यदि मैं किसी दिए गए ActionResult आइटम पर राइट क्लिक करता हूं और इन चरणों का पालन करता हूं, तो मुझे 'नियंत्रक' (युक्त वर्ग का प्रकार) के लिए 'निरीक्षण' विकल्प मिलते हैं। अगर मैं 'ViewResult' परिभाषा पर जाने की कोशिश करता हूं, तो मैं मेटाडेटा में हूं और मेरे पास पदानुक्रमों का निरीक्षण करने का विकल्प नहीं है।
दान एस्परज़ा

1
इसके अलावा: मैं काफी निश्चित हूं कि यह एक फ़ंक्शन है जो रेस्परर द्वारा प्रदान किया गया है, यह मूल रूप से विजुअल स्टूडियो में नहीं है ...
दान एस्पारज़ा

7

विजुअल स्टूडियो क्लास व्यू देखें

विजुअल स्टूडियो क्लास व्यू में आप जिस कक्षा में रुचि रखते हैं, उसके लिए नेविगेट करें और उसके आधार और व्युत्पन्न वर्ग को खोजें


3
यह वास्तव में एक संभावित उपयोगी दृष्टिकोण है। अफसोस की बात है, यह अविश्वसनीय रूप से धीमा है, वर्तमान संपादक को लिंक / अनुसरण नहीं करता है, और आम तौर पर वीएस में एक बाद की तरह लगता है।
ई-रिज़

यह सभी वर्गों को दिखाता है, न कि केवल आपके समाधान में और बॉक्स के ठीक बाहर काम करता है। यह धीमा नहीं है। अधिक ग्राफ़-जैसे दृश्य के लिए क्लास डायग्राम बिल्ट-इन फीचर का उपयोग करें (लेकिन यह केवल आपके समाधान के भीतर कक्षाएं प्रदर्शित करता है)। यह मैं कभी भी आवश्यकता होगी और यह सबसे अच्छा जवाब है।
निकोस

5

आप रिफ्लेक्टर का उपयोग भी कर सकते हैं ।

उन सभी असेंबली को लोड करें जिन्हें आप इसे देखना चाहते हैं, एक प्रकार पर नेविगेट करें और व्युत्पन्न प्रकार आइटम का विस्तार करें।

आप इसे ऑब्जेक्ट ब्राउज़र में भी कर सकते हैं, लेकिन किसी कारण से VS2008 इसे केवल .Net फ्रेमवर्क दृश्यों में से एक में कर सकते हैं। (VS2010 बीटा 2 इसे किसी भी दृश्य में कर सकते हैं)


3
रिफ्लेक्टर में अब पैसा खर्च होता है, लेकिन ILSpy मुफ्त में ऐसा ही करेगा।
योयो

30-दिन का नि: शुल्क परीक्षण है, लेकिन कोई भी मुफ्त संस्करण आप अनिश्चित काल तक उपयोग नहीं कर सकते हैं। जब तक आप कुछ नहीं जानते मैं नहीं? मैंने सिर्फ Reflector.net की जाँच की ।
योयो

1
माफ़ करना; रिफ्लेक्टर अभी भी एक मुक्त संस्करण है। उन्हें इससे छुटकारा कब मिला?
SLaks

2 फरवरी, 2011 - zdnet.com/blog/burnette/…
yoyo

3
जो वास्तव में भयानक था, वह यह है कि उस तारीख के बाद, यदि आपने पहले डाउनलोड किए गए मुफ्त संस्करण की एक प्रति चलाई, तो रेडगेट (उन्होंने रिफ्लेक्टर खरीदा) पुराने निशुल्क संस्करण को हटा दिया, इसे परीक्षण के साथ बदल दिया। बिना किसी चेतावनी के। और "अपग्रेड" से बचने का कोई विकल्प नहीं। यह सही है: मैं कंपनी की वेबसाइट पर नहीं गया था और उनसे कुछ भी डाउनलोड किया था। लेकिन पुराने रीशेयर में लाइसेंसिंग तर्क था जो उनके लिए पुनर्निर्देशित किया गया था, और उन्हें मेरे पास मौजूद प्रतिलिपि को निष्क्रिय करने की अनुमति दी थी। मैंने कभी भी, कभी भी, किसी भी परिस्थिति में रेडगेट से कुछ भी खरीदने की कसम खाई है, अन्यथा उनके अस्तित्व को प्रोत्साहित करता हूं।
टूलमेकर

4

फ्रेमवर्क कक्षाओं के लिए, मैं MSDN लाइब्रेरी का उपयोग करता हूं। वंशानुक्रम पदानुक्रम अनुभाग दोनों दिशाओं में जाता है। हालांकि, कुछ 3 डी पार्टी पुस्तकालयों के लिए बहुत मदद नहीं की गई है।


यहाँ System.Exception: msdn.microsoft.com/en-us/library/…
bnieland

4

बेस क्लास पर ReSharper (संस्करण 2016.1.2) की मदद से बस Ctrl+ Alt+ Click। आप कुछ इस तरह देखेंगे:

व्युत्पन्न कक्षाएं देखें


1
+1 नाइस! तो ऐसा लगता है कि सूची में बोल्ड दिखाई देने वाले वर्ग नाम सीधे चयनित बेस क्लास से विरासत में मिले हैं, और सूची में वर्ग के नाम जो बोल्ड नहीं हैं, अप्रत्यक्ष रूप से चयनित बेस क्लास से विरासत में मिले हैं?
साइमन बोसले

बिल्कुल सही। बाल्ड सीधे वंशानुगत वर्ग होंगे।
Devid

3

ऑब्जेक्ट एक्सप्लोरर से क्लास दिगराम फाइल में क्लास या नेमस्पेस खींचें ।

बिल्ट-इन .net कक्षाओं के लिए एक अच्छा वर्ग आरेख कैसे प्राप्त करें?


लिंक किए गए उत्तर की जांच करें जो स्क्रीनशॉट के साथ चरणों को दिखाता है
इमान

1

प्रकार का चयन करें और राइट क्लिक करें कुछ देखें --- कोड मैप पर दिखाएं - दत्तक चयन करें यह उन लोगों के लिए छवि फ़ॉर्मेट उत्पन्न करता है जो इस प्रकार को बहुत अच्छी छवि के रूप में प्राप्त करते हैं।। dgml फ़ाइल स्वरूप यह प्रकार के बारे में बहुत अधिक जानकारी देता है।


1

विज़ुअल असिस्ट का उपयोग करने वालों के लिए एक विकल्प के रूप में, आप "गोटो संबंधित" संदर्भ मेनू को लाने के लिए Shift + ALT + G (जबकि कैरेट वर्ग के नाम पर है) दबा सकते हैं, और यदि व्युत्पन्न वर्ग हैं तो आपको एक सबमेनू मिलेगा उस के लिए उन सभी को सूचीबद्ध करता है और यहां तक ​​कि उन व्युत्पन्न वर्गों के बीच विरासत संरचनाओं को दिखाता है।


0

बस इसे कोड करें।

Assembly asm = Assembly.LoadFrom(PATH_TO_PROJECT_OUTPUT);

var types = from t in asm.GetTypes()
            where t.BaseType != null && t.BaseType.ToString() == "System.Web.UI.Page"
            // if you want to add reference - where typeof (System.Web.UI.Page).Equals(t.BaseType) 
            select t;

foreach (var type in types)
{
    Console.WriteLine(type);
}

2
दुर्भाग्य से यह केवल उन प्रकारों को बताता है जो सीधे किसी विशेष वर्ग से प्राप्त होते हैं, न कि वे जो अप्रत्यक्ष रूप से एक वर्ग से प्राप्त होते हैं। इसके लिए आपको शायद कुछ ऐसा इस्तेमाल करना होगा जैसे MZN ने लिखा है।
15:

या आप t.IsSubClassOf (targetclass) का उपयोग कर सकते हैं।
user420667

0

यदि आपने VS2012 में अपग्रेड किया है तो आप "कोड मैप" का उपयोग कर सकते हैं।
आप जिस प्रकार की विरासत पदानुक्रम देखना चाहते हैं उस पर राइट क्लिक करें और "कोड मैप में जोड़ें" चुनें। फिर कोड मानचित्र दृश्य में आप नोड्स का विस्तार कर सकते हैं और "शो Derived / Base classes" चुनने के लिए राइट क्लिक करें। दुर्भाग्य से यह .NET प्रदान की गई कक्षाओं के लिए काम नहीं करता है।


4
किसी और को FYI करें, यह केवल VS2012 अल्टीमेट विथ अपडेट 1 इंस्‍टॉल पर लागू होता है। प्रीमियम / प्रो लोग दुर्भाग्य से इन मानचित्रों को नहीं बना सकते हैं।
सीन हैनले

0

विजुअल स्टूडियो 2012 के लिए ( बिना रीपर के )

  1. सॉल्यूशन एक्सप्लोरर में उस क्लास पर राइट क्लिक करें (जिसकी व्युत्पन्न कक्षाएं आप देखना चाहते हैं)।
  2. वर्ग आरेख में, कक्षा पर राइट क्लिक करें और 'शो व्युत्पन्न कक्षाएं' चुनें।

1
फिर से, जहां तक ​​मैं बता सकता हूं यह केवल व्युत्पन्न वर्ग दिखाएगा जो आपने लिखा था। मूल प्रश्न में बताए गए उदाहरण के साथ यह कैसे काम करेगा? (एक्शनटाइटल प्रकार)
दान एस्पारज़ा

0

2020 अद्यतन:

आप विजुअल स्टूडियो के कोड मैप्स का उपयोग कर सकते हैं जो कि बहुत अच्छा काम करता है।

सीधे शब्दों में सही वर्ग और करने के लिए नेविगेट पर क्लिक करें:
Code Map> Show Related Items on Code Map>Show All Derived Types

यहां छवि विवरण दर्ज करें

ध्यान दें:

  • यह सुविधा उपलब्ध है केवल विजुअल स्टूडियो के उद्यम संस्करण पर, और यदि आप नहीं है , तो आप इसे प्राप्त कर सकते हैं मुक्त करने के लिए से उद्यम पूर्वावलोकन संस्करण को डाउनलोड करके यहाँ
  • या हो सकता है कि आप अपनी टीम से किसी को भी इस मानचित्र के साथ कोड मैप साझा करने के लिए कह सकते हैं यदि उनके पास यह संस्करण है।

PS यह वास्तव में आपके मशीन में एंटरप्राइज संस्करण (या कम से कम इसका पूर्वावलोकन संस्करण) रखने के लिए योग्य है, क्योंकि इसमें वास्तव में उपयोगी उपकरण हैं जो अन्य संस्करणों में शामिल नहीं हैं।


1
ऐसा लगता है कि यह केवल उन प्रकारों के लिए काम करता है जिनके लिए आपके पास स्रोत है। चीजों की तरह नहीं ActionResult(ओपी का उदाहरण)
इयान

-1

ऐसा करने का एक बहुत ही सरल तरीका है, : Classname"ढूँढें और बदलें विंडो" (CTRL + F) की खोज करें और "खोजें विकल्प / मिलान पूरे शब्द" विकल्प का उपयोग करें। आपको केवल विरासत में मिली कक्षाएं ही मिलेंगी।


1
यह हर बार काम नहीं करता है, विचार करेंclass DDerived : IInterface, BBase
jirkamat
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.