यह कैसे करें? क्या एक अलग डीएल फ़ाइल या प्रोजेक्ट का उपयोग किये बिना एक एफ # कोड से सी # में फ़ंक्शन को कॉल करना संभव है?क्या एक एकल विजुअल स्टूडियो विंडोज कंसोल प्रोजेक्ट में .cs (सी #) और .fs (F #) फ़ाइलों को मिश्रण करना संभव है? (.NET)
उत्तर
आप एक ही प्रोजेक्ट में दो अलग-अलग भाषाओं को शामिल नहीं कर सकते हैं, लेकिन आप उन्हें ilmerge का उपयोग करके मर्ज कर सकते हैं। ऐसा करने के लिए, दोनों परियोजनाओं को एक ही समाधान में रखें और एफ # मॉड्यूल को संदर्भित करें क्योंकि आप किसी भी डीएलएल करेंगे। अपनी परिनियोजन स्क्रिप्ट के हिस्से के रूप में, exe फ़ाइल और dll फ़ाइल को एक exe फ़ाइल में गठबंधन करने के लिए ilmerge चलाएं। यह Code Project आलेख देखें जो वर्णन करता है कि एक exe बनाने के लिए ilmerge का उपयोग कैसे करें।
नहीं। यदि आप एकल .exe का उत्पादन करना चाहते हैं तो आप इनमें से कुछ f # static लिंक विकल्पों का उपयोग कर सकते हैं F # --full-help comandline इन का अधिक विवरण के स्विच का उपयोग करें।
एक ही परियोजना में सी # और एफ # मिश्रण करने में सक्षम नहीं है एक समस्या पैदा करता है; यह दोनों परियोजनाओं के बीच परिपत्र निर्भरता की ओर जाता है। संकल्पनात्मक रूप से केवल एक ही परियोजना है जिसमें दो भाषाएं हैं, लेकिन जिस तरह से विजुअल स्टूडियो परियोजनाओं का प्रबंधन करता है, भाषाओं को मिश्रित नहीं किया जा सकता है, जिससे परिपत्र निर्भरताएं होती हैं।
अब के लिए एकमात्र समाधान मैं इसे तीसरे प्रोजेक्ट में कई इंटरफेस बनाने के लिए देखता हूं और परियोजना में से एक असली परियोजना के बजाय इंटरफेस प्रोजेक्ट का संदर्भ देता है। क्या कोई बेहतर तरीका है?
सधन्यवाद, निक
एक्सेलेंट टिप्पणी और प्रश्न, लेकिन जब तक आप इसे एक प्रश्न के रूप में पोस्ट नहीं करते हैं तब तक आपको अधिक ध्यान नहीं मिलेगा। –
+1 मैंने एक ही असेंबली में सी # और एफ # प्राप्त करने के लिए आईएलएमर्ज का उपयोग करने के लिए कई वाणिज्यिक परियोजनाओं का सहारा देखा है। माइक्रोसॉफ्ट को आईएलएमर्ज को सही तरीके से समर्थन देना चाहिए और इसे एक कर्मचारी को अल्फा रिलीज सॉफ़्टवेयर डालने के बजाय विजुअल स्टूडियो में एम्बेड करना चाहिए। –
आप एक सी # परियोजना में एफ # स्रोत फ़ाइलें (.fs) संकलन नहीं कर सकते, लेकिन आप को जोड़ने के एफ # स्क्रिप्ट फ़ाइलें (.fsx) जो आप संदर्भ के लिए उपयोग कर सकते हैं और खोज कर सकते हैं एफ # से सी # परियोजना की विधानसभा इंटरैक्टिव:
public static class Math
{
public static double PowN(double d, int n)
{
var result = 1;
for (int i = 0; i < n; i++) result *= d;
return result;
}
}
एफ # स्क्रिप्ट फ़ाइल (.fsx):
#r "bin\debug\ClassLibrary1.dll"
Math.PowN(2.0,3)
अपने एफ # कोड संकलित करें, (किसी भी उपकरण के साथ "डिकंपाइल" परावर्तक की तरह, मैं lspy) से सी # कोड, इसे एक परियोजना में शामिल करें -> लाभ!
- 1. क्या मैं विजुअल स्टूडियो में एक प्रोजेक्ट में सी ++ और सी मिश्रण कर सकता हूं?
- 2. विजुअल स्टूडियो - एक सी ++ प्रोजेक्ट
- 3. विजुअल स्टूडियो प्रोजेक्ट में सभी फ़ाइलों को यूटीएफ -8
- 4. क्या विजुअल स्टूडियो ऑटोफॉर्मेट को कस्टमाइज़ करना संभव है?
- 5. क्या सी # प्रोजेक्ट में सी कोड एम्बेड करना संभव है?
- 6. एक सी # .NET 4.0 विजुअल स्टूडियो 2010 कंसोल अनुप्रयोग में UrlDecode को कॉल करना?
- 7. प्रोजेक्ट फ़ाइलों को एक .NET प्रोजेक्ट
- 8. विजुअल स्टूडियो 2010 त्रुटि: .NET 4.0 प्रोजेक्ट
- 9. विजुअल स्टूडियो: समाधान में सभी स्रोत फ़ाइलों को प्रिंट करना?
- 10. मैं विजुअल स्टूडियो प्रोजेक्ट
- 11. विजुअल स्टूडियो 2008 सी ++ प्रोजेक्ट
- 12. विंडोज फॉर्म आयात करना (सी #), विजुअल स्टूडियो 2012
- 13. क्या नकली विंडोज कंसोल एपीआई संभव है?
- 14. क्या विजुअल स्टूडियो एक्सएमएल टिप्पणियों को विकृत करना संभव है?
- 15. विजुअल स्टूडियो 2010-सी ++ प्रोजेक्ट
- 16. क्या .NET में रंग में कंसोल को लिखना संभव है?
- 17. विजुअल स्टूडियो और सी #
- 18. विजुअल स्टूडियो सेवा प्रोजेक्ट
- 19. क्या विजुअल स्टूडियो में बिल्ड आउटपुट में सामग्री फ़ाइल पथ को "पतन" करना संभव है?
- 20. क्या Win32 एप्लिकेशन प्रोजेक्ट को कंसोल एप्लिकेशन में कनवर्ट करना संभव है?
- 21. विभिन्न विजुअल स्टूडियो 2010 प्रोजेक्ट
- 22. cs .net
- 23. विजुअल स्टूडियो 2010 और विंडोज 2000
- 24. क्या विजुअल स्टूडियो प्रोजेक्ट में स्रोत फ़ोल्डर निर्दिष्ट करना संभव है?
- 25. विजुअल स्टूडियो में एक एकल वर्ग/फ़ाइल संकलित करें
- 26. विजुअल स्टूडियो सी # और एएसपी.नेट
- 27. डब्ल्यूपीएफ, विजुअल स्टूडियो का मिश्रण?
- 28. विजुअल स्टूडियो 2012 प्रोजेक्ट से विजुअल स्टूडियो 2008
- 29. प्रोग्राम स्टूडियो स्टूडियो प्रोजेक्ट में प्रोग्रामेटिक रूप से एक नया विजुअल स्टूडियो प्रोजेक्ट कैसे उत्पन्न करें?
- 30. विजुअल स्टूडियो 2005 प्रोजेक्ट
एफ # का स्थैतिक लिंक स्विच इतनी ही चीज के रूप में। – Robert