में समग्र स्वरूपण का उपयोग करके फ़ॉर्मैट मुझे पसंद है कि स्ट्रिंग.फॉर्मैट स्ट्रिंग में स्ट्रिंग में चर को इंजेक्ट करने के लिए तर्कों का उपयोग कैसे करता है। इसे कंपोजिट फॉर्मेटिंग कहा जाता है और एमएसडीएन here द्वारा चर्चा की जाती है।मैं अपनी खुद की विधि स्ट्रिंग के समान कैसे बना सकता हूं। C#
मैं अपने प्रवेश मुखौटा के साथ इस कार्यक्षमता हैं:
string foo = "fancy";
string bar = "message";
log.Debug("My {0} log {1}.", foo, bar)
मेरे ILoggerFacade निम्न विधि हस्ताक्षर हैं:
void Debug<T>(T message, params Object[] args);
और, मैं जानता हूँ कि मैं काफी बस यह लागू कर सकते हैं:
ILog m_Log = \\some logging implementation
public void Debug<T>(T message, params Object[] args)
{
m_Log.Debug(String.Format(message, args));
}
हालांकि, विजुअल स्टूडियो में मुझे {0}, {1}, ... ar की फैंसी हाइलाइटिंग नहीं मिलती है guments:
मैं इसे ReSharper जो उनके लिए जिम्मेदार है लगता है, और यह है कि यह सिर्फ स्वरूपण तर्क अनदेखी और नहीं "IntelliSense" मदद दे रहा है लगता है। यह अच्छा नहीं है क्योंकि अन्य डेवलपर्स जो मुखौटा का उपयोग करेंगे, इसकी उम्मीद होगी।
Console.WriteLine(...)
String.Format(...)
etc...
किसी भी मदद की सराहना की जाएगी:
मैं तर्क हाइलाइटिंग और "IntelliSense" कैसे इन काम के लिए इसी तरह कस्टम स्वरूपित तरीकों के लिए कैसे मिलता है।
टिप्पणियां जोड़ने के लिए तीसरा रास्ता के बारे में - आप विधानसभा के पास एनोटेशन xml फ़ाइल डाल सकते हैं, .ExternalAnnotations.xml द्वारा यह नाम रख कर अपनी सीवीएस के लिए यह करते हैं। अन्य सभी डेवलपर इसे अपडेट के दौरान स्वचालित रूप से प्राप्त करेंगे। –
derigel
@derigel गुड कॉल। मैं उसके बारे में भूल गया। मैं शर्त लगा रहा हूं कि आप इसे Nu Nuet पैकेज में शामिल करने के लिए कुछ भी कर सकते हैं। हालांकि, अगर उपलब्ध हो तो भी मैं विकल्प 2 की सिफारिश करूंगा। – cadrell0
सुझाव के अनुसार चरण 2 करने के लिए: http://www.jetbrains.com/resharper/webhelp/Code_Analysis__Annotations_in_Source_Code.html – Oliver