2012-02-14 9 views
29

से मैं एक वर्ग है उत्पन्न के रूप में:इंटरफ़ेस मौजूदा वर्ग

Class MyClass 
{ 
    public MyClass { ... } 
    public string Name { get { ... } } 
    public int IdNumber { get { ... } set { ... } } 
    public void GenerateNme {...} 
} 

यह सिर्फ एक नमूना वर्ग है। मैं इससे इंटरफ़ेस उत्पन्न करना चाहता हूं। जैसे, MyClass IMyClass इंटरफ़ेस को कार्यान्वित कर रहा है। मैं उत्पादन

public Interface IMyClass 
{ 
    string Name { get; } 

    int IdNumber { get; set; } 

    void GenerateNumber(); 
} 

और होना चाहते

MyClass : IMyClass 
{ 

} 

यह मैन्युअल रूप से किया जा सकता है, लेकिन मैं सिर्फ जानने के लिए उत्सुक था, क्या कोई अन्य सरल विधि यह पूरा करने के पालन करने के लिए है? यदि स्पष्ट नहीं है, तो एक टिप्पणी छोड़ दें।

धन्यवाद।

+0

[DevExpress CodeRush] (http://www.devexpress.com/Home/Try.xml) एक प्लगइन है जो आपके लिए यह करेगा। मुझे यकीन नहीं है कि [मुफ्त संस्करण] (http://www.devexpress.com/Products/Visual_Studio_Add-in/CodeRushX/) में उस विशेष रिफैक्टरिंग है। – Blorgbeard

+1

ओह, मुझे गलती हुई: कि रिफैक्टरिंग वीएस में बनाई गई है। मुझे अनदेखा करें :) – Blorgbeard

उत्तर

67

हाँ, आप दृश्य स्टूडियो का उपयोग कर एक वर्ग से एक अंतरफलक निकाल सकते हैं: लक्ष्य वर्ग फ़ाइल के अंदर

: राइट क्लिक करें>Refactor>निकालें इंटरफ़ेस ...

उदाहरण

enter image description here

तो

enter image description here

+0

-1 यह नहीं कहने के लिए। जीत के लिए Matthias!;) – KevinDeus

+4

@ केविन डीस तो आप वास्तव में सोचते हैं "यह जवाब सहायक नहीं है और वास्तव में डाउनवॉटेड होने का हकदार है"? – ken2k

+0

ओह। बहुत अजीब .. मेरे काम कंप्यूटर पर छवियां नहीं दिखती हैं .. कई माफ़ी! – KevinDeus

0

विजुअल स्टूडियो के रिफैक्टर मेनू में एक "निकालें इंटरफ़ेस" विकल्प है जो आप वास्तव में वर्णन करते हैं।

8

दृश्य स्टूडियो 2010 में, आप राइट क्लिक कर सकते MyClass और Refactor चुनते हैं, `इंटरफ़ेस ... निकालें" (Ctrl +आर, मैं)। इससे सदस्यों को निकालने के लिए एक विंडो मिलती है।

24

दृश्य स्टूडियो 2015/2017 में, यह त्वरित कार्रवाई मेनू के अंतर्गत है (Ctrl + अवधि )

+0

यह काम नहीं कर रहा था, मुझे तुम्हारी याद आती है 'अवधि': Ctrl + period '।', यानी यह त्वरित क्रिया मेनू में है। –

+1

मेरा उत्तर अधिक स्पष्ट होने के लिए संपादित किया गया – cdie

+0

सुनिश्चित करें कि कर्सर को उस कक्षा के नाम पर कहीं भी रखें जहां से आप इंटरफ़ेस निकालना चाहते हैं। अन्यथा यह दिखाता है "यहां कोई त्वरित कार्रवाई उपलब्ध नहीं है"। माइक्रोसॉफ्ट और एक तरह से चलने वाले उपकरण को बदलने के तरीके को तब तक न बदलें जब तक कि इससे पहले यह बहुत बेहतर न हो। विंडोज 8 से सीखें, यही कारण है कि हमारे पास Win10 के लिए एक मुफ्त अपग्रेड है ;-) – Legends

2

विजुअल स्टूडियो 2015 में, में कर्सर या वर्ग के नाम पर राइट क्लिक क्लिक करें, फिर त्वरित क्रियाएं (या दबाएं Ctrl - ) और 'एक्सट्रैक्ट इंटरफ़ेस' विकल्प दिखाता है।

+0

कूल संपादित @Stijn, मुझे यह याद रखना होगा: Ctrl

0

'Ctrl' + '।' 'जनरेटिंग ओवरराइड ...' पॉप अप कर रहा था और इससे कुछ भी नहीं हो रहा था इसलिए मैंने त्वरित लॉन्च सर्च बॉक्स में 'रिफैक्टर' की खोज की। परिणामों में 'एडिट -> रिफैक्टर -> इंटरफेस निकालें (Ctrl + R, Ctrl + I)' विकल्प था।

उम्मीद है कि यह टिप किसी और की भी मदद कर सकती है। मैं वीएस 2017 ईई का उपयोग कर रहा हूँ।

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