vb.net

2008-10-15 18 views
8

में संदिग्ध वर्ग के सदस्य मैं vb.net में सी # असेंबली से कक्षा का उपयोग करने की कोशिश कर रहा हूं। कक्षा में संदिग्ध सदस्य हैं क्योंकि vb.net केस असंवेदनशील है।vb.net

 
public class Foo { 

    public enum FORMAT {ONE, TWO, THREE}; 

    public FORMAT Format { 
    get {...} 
    set {...} 
    } 
} 

मैं enum तक पहुँचने का प्रयास: Foo.FORMAT.ONE

यह भी संभव है क्योंकि वहाँ एक संपत्ति 'प्रारूप' का नाम नहीं है वर्ग कुछ इस तरह है।

मैं सी # असेंबली नहीं बदल सकता। मैं इसके आसपास कैसे हो सकता हूं और enb को vb.net से संदर्भित कर सकता हूं?

उत्तर

7

मुझे नहीं लगता कि आप इसके आसपास हो सकते हैं। सी # घटक के लेखक के संपर्क में रहें जिसका आप उपयोग करने की कोशिश कर रहे हैं और उन्हें अपने कोड को ठीक करने के लिए मनाने के लिए प्रतिबद्ध हैं।

संयोग से, यह CLSCompliant(true) विशेषता के पीछे प्राथमिक कारण है, यदि आप एपीआई या अन्य कोड लिख रहे हैं जिनके पास अन्य भाषाओं द्वारा उपयोग की जाने की उच्च संभावना है तो आपको हमेशा सेट करना चाहिए। इस मुद्दे को मूल लेखक के बारे में जागरूक होने और सही तरीके से ठीक करने के लिए इस मुद्दे को ध्वजांकित किया होगा।

4

इसके आसपास आप कुछ तरीकों से काम कर सकते हैं, लेकिन कोई भी वास्तव में एक अच्छा विकल्प नहीं है।

एक सी # प्रोजेक्ट बनाना और पूरी तरह कक्षा को लपेटना है, अस्पष्ट सदस्यों को अस्पष्ट लोगों में बदलना। कक्षा कितनी बड़ी है, इस पर निर्भर करता है कि यह बहुत काम हो सकता है, हालांकि आपको केवल उन सदस्यों को लपेटना होगा जिन्हें आप चाहते हैं।

दूसरा प्रतिबिंब का उपयोग करना है, जो रैपिंग के रूप में उतना ही काम नहीं है, लेकिन लेखक की तुलना में अभी भी व्यर्थ काम है, बस कोड को सही जगह पर लिखना।