2009-08-18 9 views
19

मैं इन दोनों तरीकोंसी #, xmlDoc: संदर्भित करने के लिए कैसे विधि overloads

public Foo Get(string bar) { ... } 
public Foo Get(int bar) { ... } 

और एक अलग पद्धति पर एक्सएमएल प्रलेखन के इस टुकड़े बारे में है, तो

/// <summary> 
/// Has a close relation to the <see cref="Get"/> methods. 
/// </summary> 

मैं Get तहत टेढ़ा-मेढ़ा एक नीले मिल , कह रही है कि यह संदिग्ध संदर्भ 'प्राप्त करें' है। जो सच है, लेकिन मैं इसे दोनों संदर्भ देना चाहता हूं। ऐसा करने का सही तरीका क्या है? या क्या मुझे केवल एक विधि अधिभार का संदर्भ देना चाहिए?

+0

संभावित डुप्लिकेट [सी # में टैग में विधि अधिभार के लिए एक क्रेफ कैसे बनाएं?] (Https://stackoverflow.com/questions/419702/how-to-make-a-cref-to-method- overloads-in-a-seealso-tag-in-c) – binki

उत्तर

17

प्रयास करें

/// Has a close relation to the <see cref="Get(string)"/> 
/// and <see cref="Get(int)" /> methods. 

पूर्ण typenames आवश्यकता हो सकती है लेकिन IntelliSense जैसे ही आप में पहली ब्रैकेट डाल मदद करनी चाहिए।

आशा है कि मदद करता है,

दान

+4

एचएम ... यदि आपके पास बहुत अधिक अधिभार हैं तो परेशान हो सकता है ... – Svish

+1

दरअसल! हालांकि, अगर आपके पास बहुत अधिक अधिभार हैं जो एक गंध हो सकती है जो आपको बताती है कि काम में एक रिफैक्टर है। दयालुता, दान –

+2

मुझे उम्मीद है कि ओपी मूल रूप से क्या चाहता था, ऐसा करने का कोई तरीका होगा। हालांकि यह दृष्टिकोण एक बेहतर तरीके से अनुपस्थिति में व्यावहारिक है, यह भी गड़बड़ है, इस अर्थ में कि तर्क सूची एक _implementation detail_ है जो वास्तविक टिप्पणी के लिए प्रासंगिक नहीं है। अगर बाद में कुछ तीसरे अधिभार को जोड़ा गया और यह टिप्पणी भूल गई, तो यह गलत तरीके से सुझाव देगी कि टिप्पणी _doesn't_ उस नए अधिभार पर लागू नहीं होती है जब वास्तव में यह संभवतः करता है। (मुझे लगता है कि मैंने एक करीबी दृष्टिकोण देखा है लेकिन दुर्भाग्य से इसे याद नहीं कर सकता।) – Kevin

2

यहाँ एक अद्यतन है इस पुराने सवाल का जवाब। मुझे यकीन नहीं है कि यह कब वैध हो गया है क्योंकि वहां बहुत अधिक दस्तावेज नहीं हैं। यदि आप cref"o:..." के साथ "o:myMethod()" के साथ विशेषता उपसर्ग करते हैं तो यह ओवरलोड अनुभाग से लिंक होगा और उस विधि के सभी ओवरलोड को कवर करेगा। डैनियल एलियट के जवाब के उदाहरण का उपयोग:

/// Has a close relation to the <see cref="o:Get()"/> methods. 

यह भी अस्पष्ट संदर्भ के बारे में Intellisense/Resharper से चेतावनी निकाल देंगे।

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