क्या विजुअल स्टूडियो 2008 को चेतावनी देने के लिए कॉन्फ़िगर किया जा सकता है जब मैं किसी ऑब्जेक्ट को डिस्पोजेबल लागू करने के लिए भूल जाता हूं?क्या विजुअल स्टूडियो मुझे चेतावनी दे सकता है जब मैं एक आईडीस्पोजेबल ऑब्जेक्ट का निपटान करना भूल जाता हूं?
उत्तर
विजुअल स्टूडियो, अपने आप में यह सुविधा नहीं है, लेकिन CodeRush साथ आप जहां जरूरत ब्लॉकों का उपयोग कर सम्मिलित करने के लिए डिजाइन समय चेतावनी और refactorings हो सकता है।
मुझे नहीं लगता कि यह संकलन समय पर किया जा सकता है।
हालांकि, यह रनटाइम पर किया जा सकता है।
मैंने एक अमूर्त वर्ग 'डिस्पोजेबल' बनाया है (जो IDISposable लागू करता है, और डिस्पोजेबल पैटर्न लागू करता है)। फाइनेंजर में, जब मैं अंतिमकर्ता कहलाता हूं, तो मैं एक आवेषण जारी करता हूं, और ऑब्जेक्ट का निपटारा नहीं किया गया है।
मैं इयान ग्रीफिथ के एक लेख पर इस आधार पर किया है:
http://www.interact-sw.co.uk/iangblog/2004/04/26/yetmoretimedlocking
मैं निपटान निपटने के लिए एक आधार वर्ग के होने के खिलाफ तर्क है । चूंकि .NET एकल विरासत है, यह आपको बहुत सख्त विरासत श्रृंखला में लॉक करता है जिसके लिए आपके डिस्प्लेबेस को शीर्ष पर होना आवश्यक है। –
इसके अलावा आप "System.ComponentModel.Component" का उपयोग कर सकते हैं –
मुझे यकीन है कि आप C# या VB उपयोग कर रहे हैं नहीं कर रहा हूँ, लेकिन सी # में, "सबसे अच्छा अभ्यास" के लिए रास्ता प्रकार IDISposable की वस्तुओं को संभालने के लिए कोड को एक प्रयोग ब्लॉक में रखना है।
"उपयोग करने वाले कथन प्रोग्रामर को यह निर्दिष्ट करने की अनुमति देता है कि संसाधनों का उपयोग करने वाली वस्तुओं को उन्हें छोड़ देना चाहिए। उपयोग कथन को प्रदान की गई वस्तु को IDISposable इंटरफ़ेस को कार्यान्वित करना होगा। यह इंटरफ़ेस निपटान विधि प्रदान करता है, जिसे ऑब्जेक्ट के संसाधनों को छोड़ना चाहिए।" - MSDN Link
HTH,
-Dan
यह किसी भी तरह से प्रश्न का उत्तर नहीं देता है। –
क्या विजुअल स्टूडियो 2008 को मुझे चेतावनी देने के लिए कॉन्फ़िगर किया जा सकता है यदि मैं ऐसी ऑब्जेक्ट बनाता हूं जो IDISposable लागू करता है, और उसके बाद इसे उपयोग करने वाले ब्लॉक में संलग्न करना भूल जाता है? – ChrisW
यदि आप FxCop डिजाइन पर बारी नियम यह आपको बता जब आप IDisposable को लागू नहीं है और आप सदस्य हैं जिसमें IDisposable को लागू है, इस तरह होगा:
class Program
{
private DataTable NotDisposed;
public Program()
{
NotDisposed = new DataTable();
}
static void Main()
{
}
}
FxCop इस तरह की सामग्री के लिए बहुत अच्छा है। 'अगर यह दृश्य स्टूडियो वास्तव में आपको चेतावनी देता है तो यह अच्छा होगा अगर आपने गलती की है (या आईडीस्पोज़ेबल लागू करना), लेकिन बिल्ली। –
- 1. आईडीस्पोजेबल कार्यान्वयन - 'अगर (निपटान)'
- 2. क्या मुझे प्रक्रिया का निपटान करना है। स्टार्ट (यूआरएल)?
- 3. मैं एक आईडीस्पोजेबल WPF नियंत्रण का निपटान कब कर सकता हूं उदा। WindowsFormsHost?
- 4. क्या मुझे विजुअल स्टूडियो
- 5. क्या मुझे म्यूटेक्स का निपटान करना चाहिए?
- 6. मैं विजुअल स्टूडियो आईडीई में रंगीन सभी आईडीस्पोजेबल कक्षाओं को अलग-अलग कैसे बना सकता हूं?
- 7. मैं एक पैकेज पर चेतावनी चेतावनी क्यों नहीं दे सकता?
- 8. मैं विजुअल स्टूडियो से जीएसी में एक डीएलएल का संदर्भ कैसे दे सकता हूं?
- 9. नया सी ++: क्या मुझे विजुअल स्टूडियो का उपयोग करना चाहिए?
- 10. जब मैं आईओसी का उपयोग करता हूं तो मैं ऑब्जेक्ट निपटान का प्रबंधन कैसे करूं?
- 11. जब मैं जावास्क्रिप्ट फ़ाइल खोलता हूं तो विजुअल स्टूडियो 2008 क्रैश हो जाता है?
- 12. विजुअल स्टूडियो एक सर्कुलर संदर्भ जोड़ता है जब मैं टूलबॉक्स
- 13. क्या मैं विजुअल स्टूडियो 11 को याद कर सकता हूं?
- 14. विजुअल स्टूडियो चेतावनी स्तर मतलब?
- 15. जब मैं विजुअल स्टूडियो थीम रंग बदलता हूं तो मैं कैसे पता लगा सकता हूं?
- 16. विजुअल स्टूडियो 2010 में "चेतावनी चेतावनी" मेन्यूइटम उपलब्ध नहीं है
- 17. जब विजुअल स्टूडियो डीबगर
- 18. जब मैं किसी प्रोजेक्ट का संदर्भ जोड़ता हूं तो विजुअल स्टूडियो/टूल्स मुझे सर्कुलर निर्भरता ग्राफ दिखा सकता है?
- 19. मुझे .NET में अपनी ऑब्जेक्ट्स का निपटान कब करना चाहिए?
- 20. जब विजुअल स्टूडियो
- 21. विजुअल स्टूडियो 2008 क्यों भूल जाता है कि मेरे ऐड-इन विंडो फलक को डॉक करना है?
- 22. विजुअल स्टूडियो डिजाइनर का उपयोग करना - "ऑब्जेक्ट रेफरेंस ऑब्जेक्ट के इंस्टेंस पर सेट नहीं है" (विजुअल स्टूडियो 2008)
- 23. मुझे विजुअल स्टूडियो 2008
- 24. क्या विजुअल स्टूडियो की सी 4345 चेतावनी गलत है?
- 25. मुझे विजुअल स्टूडियो 2010
- 26. मुझे विजुअल स्टूडियो 2010
- 27. क्या मैं विजुअल स्टूडियो 2008 में एमवीसी 3 का उपयोग कर सकता हूं?
- 28. क्या कोई मुझे node.js एप्लिकेशन का उदाहरण दे सकता है
- 29. जब मैं सक्रिय होता हूं तो विजुअल स्टूडियो विंडो को हाइलाइट कैसे किया जा सकता है?
- 30. विजुअल स्टूडियो 2010 - चेतावनी केवल सक्रिय फ़ाइल
रीशेपर भी ऐसा करेगा। –
कोडरश एक्सप्रेस भी मुफ्त में उपलब्ध है: http://www.devexpress.com/Products/Visual_Studio_Add-in/CodeRushX/ –
FxCop और Genderme यह भी करेंगे (दोनों मुफ्त) – Paco