2012-08-05 11 views
10

विजुअल स्टूडियो में, मैं कक्षा या विधि पर राइट-क्लिक कर सकता हूं और "उपयोग ढूंढें" चुन सकता हूं। यह मुझे मेरे समाधान में स्थानों की एक सूची देता है जहां कोड का वह टुकड़ा उपयोग किया जाता है। मैं अपने कोड से ऐसा कैसे कर सकता हूं?कक्षा या विधि के उपयोग खोजने के लिए सी # का उपयोग कैसे करें?

उत्तर

10

आपको ऐसा करने के लिए अपने कोड को पार्स करना होगा। मुझे नहीं लगता कि आप इसे प्रतिबिंब के साथ कर सकते हैं। एमएस रोज़लिन नामक एक परियोजना पर काम कर रहा है। यह .NET संकलक के लिए एक एपीआई है। यह आपको जो चाहिए उसे प्रदान करना चाहिए। Roslyn परियोजना के विवरण के लिए this पोस्ट देखें। पद से

उद्धरण:

यह खुल जाता है वी.एस. extenders शक्तिशाली refactorings और भाषा विश्लेषण उपकरणों लिखने के लिए, साथ ही लिए किसी को भी हमारे पारसर्स, अर्थ इंजन, कोड जनरेटर शामिल की अनुमति है और के लिए नए अवसर अपने स्वयं के अनुप्रयोगों में स्क्रिप्टिंग।

This post प्रतीकों के साथ काम करने का प्रदर्शन करता है।
This post सभी संदर्भ प्राप्त करने के प्रश्न का उत्तर दें।

4

ईमानदारी से कहूं तो मैंने कभी नहीं किया है कि पहले की तरह मैं कुछ ऐसी बातें की जरूरत कभी नहीं।

semantic analysis के लिए निर्मित कंपाइलर के Token Tree तक पहुंच के लिए आपको जिस तरह की जानकारी की आवश्यकता है, उस तक पहुंच के लिए।

इस तरह की जानकारी, सुनिश्चित करने के लिए आप Roslyn (सी # कंपाइलर के लिए एपीआई) से पहुंच सकते हैं। आप कहाँ एपीआई समारोह एक C# पाठ में धक्का कर सकते हैं, इस पर एक संकलक चलाने के लिए और Tokens tree की वसूली।

The Roslyn Project Overview

आशा इस मदद करता है।

0

जहाँ तक मुझे पता है, आपकी समाधान में सभी परियोजनाओं के सभी उपयोगों को खोजने के लिए कोई रास्ता नहीं है। अपने वर्ग इसे करने के लिए एक अनूठा नाम है, तो दृश्य स्टूडियो के खोज फ़ंक्शन एक "सम्पूर्ण समाधान" खोज गुंजाइश है, जो अपने समाधान में हर फ़ाइल में ठीक वही खोज पाठ के लिए लग रहा है है।

यह विशेष रूप से, के रूप में यह भी टिप्पणी, इसी नाम के मैदान, एक ही तार के साथ कुछ भी मेल खाता है हर बार अपने विधि का इस्तेमाल किया जा रहा है नहीं मिल रहा है, लेकिन यह एक अच्छी शुरुआत है।

संबंधित मुद्दे