6

मैं ओएस एक्स पर ज़ैमरिन स्टूडियो में पोर्टेबल क्लास लाइब्रेरीज़ (पीसीएल) का उपयोग कर रहा हूं। मेरे पास दो पीसीएल पुस्तकालय हैं जो .NET 4.5, विंडोज फोन 8, विंडोज स्टोर ऐप, Xamarin.iOS को लक्षित कर रहे हैं, और Xamarin.Android। मैं अपने आईओएस, एंड्रॉइड और यूनिट परीक्षण परियोजनाओं में इन दो पुस्तकालयों का संदर्भ देता हूं। 3 क्षेत्रों में मैं निम्न त्रुटि हो रही है:पोर्टेबल क्लास लाइब्रेरी सिस्टम। ऑब्जेक्ट त्रुटि

The type 'System.Object' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'.

कोड सीधा है:

MyClass myClass = new MyClass(); 

त्रुटि परियोजनाओं कि PCLs संदर्भ में से प्रत्येक में एक बार होता है। उनमें से कोई भी एक ही कक्षा नहीं है। मैं पीसीएल के लिए नया हूँ। मैंने विंडोज फोन 8 को हटाने की कोशिश की है (जैसा कि मैंने इसे अंतिम मिनट जोड़ा) और फिर भी समस्या दूर नहीं जाती है। किसी भी मदद की सराहना की जाएगी!

धन्यवाद!

अद्यतन:

तो यह पहले क्षेत्र वर्ग (जहां वर्ग पीसीएल परियोजना से है) में घोषित साथ होता है।

int a = 0; 
MyPCLClass _myPCLClass = new MyPCLClass(); //This is where the error appears 

एक और अजीब पहलू इन कक्षाओं का उपयोग कर 50 से अधिक कक्षाओं देखते हैं कि है, और त्रुटि केवल तीन वर्गों में दिखाई दे रहा है।

+0

यह प्रोफ़ाइल 78 है, है ना? –

+0

हां यह प्रोफाइल 78 है। – JamWils

उत्तर

5

मैं बस इसी सटीक समस्या में भाग गया, और आपके जैसा ही सेटअप है। एक टिप्पणी में उल्लिखित एक टिप (स्टुअर्ट द्वारा, जिसने बदले में @ डेवकेन द्वारा एक ट्वीट का उल्लेख किया) this प्रश्न ने मेरे लिए हल किया।

को आप है

  • पहुँच एक Windows मशीन अपने मैक
  • को
  • हड़पने C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\Facades\System.Runtime.dll
  • इसे कॉपी (मैं किसी Windows 8 प्रयुक्त) में से प्रत्येक से इस dll के लिए एक संदर्भ जोड़ने आपके आईओएस और Droid परियोजनाओं
+0

पर इस समस्या में चल रहा हूं जिसने त्रुटि को ठीक किया है। हालांकि, यह निश्चित रूप से नहीं है कि इसे कैसे ठीक किया जाना चाहिए। जो एक सवाल लाता है। क्या System.Runtime.dll है कि मोनो (ज़ैमरिन) अपने कार्यान्वयन का उपयोग करते हैं? मैंने इसके लिए एक बग दायर किया, अगर कोई उत्सुक है तो लिंक यहां है। सहायता के लिए धन्यवाद। https://bugzilla.xamarin.com/show_bug.cgi?id=13400 – JamWils

+0

मुझे समान समस्याएं हैं - लेकिन वीएस के लिए मोनोटच का उपयोग करना। सिस्टम को जोड़ते समय। Runtime.dll VS अब कोई त्रुटि नहीं फेंकता है - लेकिन जब कोई त्रुटि बनाते हैं तो भी कंसोल में फेंक दिया जाता है। क्या आपने विंडोज़ पर यह कोशिश की है? – LewisBenge

1

Xamarin.Android और Xamarin.iOS का कौन सा संस्करण आप उपयोग कर रहे हैं? आपको XLarin का उपयोग करने की आवश्यकता है। पीसीएल समर्थन के लिए एंड्रॉइड 4.7.एक्स जोर, या आने वाली 4.8 रिलीज। (Xamarin.iOS के लिए डिट्टो: आपको पीसीएल समर्थन के लिए लंबित भविष्य की रिलीज की आवश्यकता है, या अल्फा चैनल का उपयोग करें।)

+0

मैंने कल बीटा चैनल (20 जुलाई, 2013) को एक्समरिन में अपग्रेड किया। एंड्रॉइड 4.8 और एक्समारिन.आईओएस 6.3.8। मैं इस धारणा के तहत था कि इस रिलीज में पीसीएल समर्थित थे। क्या मुझे अल्फा चैनल पर स्विच करने की ज़रूरत है? – JamWils

+0

AFAIK, पीसीएल समर्थन वर्तमान में अल्फा चैनल में उपलब्ध है –

+0

@jonp मैं अभी भी अल्फा चैनल –

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