2012-10-22 19 views
5

संभव डुप्लिकेट:
Can I use a .NET 4.0 library in a .NET 2.0 application?क्या मैं अपने .NET 2 एप्लिकेशन के अंदर .NET 4 एप्लिकेशन चला सकता हूं?

तो मैं एक विरासत नेट 2 जीयूआई आवेदन किया है। इस एप्लिकेशन को फिर से शुरू करना सवाल से बाहर है।

मेरे पास एक कंसोल भी है .NET 4 एप्लिकेशन जो एफ़टीपी और अन्य काम करता है। यह LINQ का उपयोग करता है।

अब, मैं सांत्वना आवेदन पुन: प्रयोज्य DLLs में (जो .NET 4 है), आदि सार संक्षेप रहा

मुझे क्या करना सक्षम होना चाहते हैं जीयूआई अनुप्रयोग (.NET 2) करने में सक्षम हो है उन डीएलएल को शामिल करें और उन्हें कॉल करें। फिर बस इससे वापसी मूल्य प्राप्त करें।

मुझे लगता है कि खराब मामला मैं इसे एक कंसोल ऐप रख सकता हूं और .NET दो इसे बाहरी रूप से निष्पादित कर सकता हूं। लेकिन मैं चाहता हूं कि जीयूआई ऐप .NET 4 टुकड़े से विधियों को निष्पादित करने में सक्षम हो।

ग्राहकों इस एप्लिकेशन को सभी चल जाएगा कि नेट 4.

धन्यवाद किया है।

उत्तर

8

तो मेरे पास विरासत .NET 2 GUI एप्लिकेशन है। इस एप्लिकेशन को फिर से शुरू करना सवाल से बाहर है।

फ्रेमवर्क लक्ष्य को .NET 4 में बदल रहा है और सवाल से पुनर्निर्माण भी कर रहा है? यह शायद सबसे आसान दृष्टिकोण होगा - तो आप जानते हैं कि आप अजीब परिस्थितियों में समाप्त नहीं होंगे जहां आप वास्तव में सीएलआर v2 पर चल रहे थे और सीएलआर v4 (और .NET फ्रेमवर्क v4 असेंबली) की असेंबली लोड करने की कोशिश कर रहे थे।

ज्यादातर मामलों में आपको केवल पुनः लक्ष्यीकरण करने में सक्षम होना चाहिए - जबकि पिछड़ा संगतता 100% नहीं है, यह बहुत अच्छा है।

+0

मैंने वास्तव में इसके बारे में सोचा है। कंपनी नीति जीयूआई जितनी ज्यादा संभव हो उतनी बदल नहीं सकती है। असल में, वे शायद मुझे पहले कंसोल ऐप (और कक्षाओं) को .NET 2 का उपयोग करने के लिए बदलने के लिए कहेंगे। लेकिन मैं जीयूआई अपडेट करने के लिए लंबे समय तक बहाना ढूंढ रहा हूं! तो कोशिश कर सकते हैं और देख सकते हैं कि मुझे किस प्रकार की पुशबैक मिलती है। – cbmeeks

1

आपको यहां क्या करने की आवश्यकता है डीएलएल में साझा उपयोगिताएं कारक हैं जो 2.0 ढांचे को लक्षित करती हैं। इन डीएलएल का उपयोग 2.0 और 4.0 दोनों नेट प्रक्रिया में किया जा सकता है। .Net पीछे की संगतता पर एक बहुत ही उच्च पट्टी रखता है और परिदृश्य के विशाल बहुमत में 2.0 डीएलएल 4.0 में बदलाव किए बिना चलाया जा सकता है।