में पोर्टेबल क्लास लाइब्रेरी मजबूत असेंबली संदर्भ समस्याएं मोनो टच और मोनोडायड में पीसीएल अच्छी तरह से काम करती हैं।पोर्टेबल क्लास लाइब्रेरी मोनो टच/मोनोड्रॉइड
लेकिन, कभी कभी, जब मैं एक चर का उपयोग एक पीसीएल में एक प्रकार के संदर्भ के लिए, और फिर मैं एक MonoX ग्राहक में है कि एक ही संदर्भ उपयोग करने का प्रयास है, तो संकलक की तरह एक संदेश के साथ विफल रहता है:
प्रकार 'System.Collections.Specialized.INotifyCollectionChanged' को एक असेंबली में परिभाषित किया गया है जिसका संदर्भ नहीं दिया गया है। आपको असेंबली 'सिस्टम के लिए एक संदर्भ जोड़ना होगा। विन्डोज़, संस्करण = 2.0.5.0, संस्कृति = तटस्थ, PublicKeyToken = 7cec85d7bea7798e, retargetable = Yes'। https://github.com/slodge/MvvmCross/tree/vnext/Cirrious/System.Windows की तरह - - और स्पष्ट रूप से DLL माइक्रोसॉफ्ट के निजी कुंजी का उपयोग करके हस्ताक्षरित नहीं किया जा सकता कि
समस्या है कि यहाँ MonoDroid में मेरी System.Collections.Specialized.INotifyCollectionChanged
पीसीएल एक परत प्रकार अग्रेषण DLL में प्रदान की जाती है।
कुछ अधिक जानकारी:
- यह आमतौर पर ICommand तरह इंटरफेस के लिए देखा और
- यह केवल .exe परियोजनाओं में होने के लिये (पुस्तकालयों किसी भी तरह ठीक काम करते हैं)
- मैं मुख्य रूप से परीक्षण कर रहा हूँ लगता है INotifyCollectionChanged है/VS2010 और VS2012
- में इमारत में कुछ और पर: https://github.com/slodge/MvvmCross/issues/41
anyo कर सकते हैं ने इसे हल करने का कोई तरीका सुझाया है? जैसे मजबूत असेंबली नामकरण सुरक्षा को बंद करने का कोई तरीका है?
मुझे लगता है कि पीसीएल वास्तव में माइक्रोसॉफ्ट के बाहर पोर्टेबल होने के लिए आवश्यक है। नेट कार्यान्वयन?
धन्यवाद। मैं कोड ठीक चला रहा हूं - इसलिए रनटाइम सत्यापन की कमी के बारे में आपका दावा सही लगता है। मुझे उन्हें समझने के लिए सावधानीपूर्वक अपने उत्तर में चरणों के माध्यम से काम करना होगा। मैंने कभी भी कोई कोड हस्ताक्षर नहीं किया है, इसलिए आपके बहुत सारे निर्देश मुझे एक विदेशी भाषा की तरह लगते हैं :) मेरे पास कुछ काम करने के बाद अधिक प्रतिक्रिया के साथ वापस आ जाएगा। – Stuart