2017-02-06 14 views
6

मैं .Net Framework लाइब्रेरी को .Net मानक में माइग्रेट कर रहा हूं और संकलक कोर बिल्डर्स को System.Reflection.Emit से नहीं ढूंढ सकता है।डॉटनेट कोर में मेथडबिल्डर, मॉड्यूलबिल्डर और असेंबलीबिल्डर कहां हैं?

अगर मैं सही जगह में हूँ तो API दस्तावेज़ में कहा गया है कि इन बिल्डरों (MethodBuilder, ModuleBuilder और AssemblyBuilder) System.Reflection.Emit का हिस्सा हैं।

यह मेरा पुस्तकालय के लिए project.json है:

{ 
    "version": "1.0.0-*", 
    "buildOptions": { 
    "debugType": "portable" 
    }, 
    "dependencies": {}, 
    "frameworks": { 
    "netstandard1.6": { 
     "dependencies": { 
     "NETStandard.Library": "1.6.0" 
     } 
    } 
    } 
} 

मैं किसी भी अतिरिक्त संदर्भ की जरूरत है?

उत्तर

7

आप उन्हें netstandard1.6 ढांचे के लिए "System.Reflection.Emit": "4.3.0" nugget पैकेज में पा सकते हैं।

+0

मेरे लिए काम किया। मुझे नहीं पता कि यह क्यों गिराया गया था ... –

0

"पशुटो मैक्विना" उत्तर भी मेरे लिए काम करता है लेकिन मैंने netstandard2.0 का उपयोग करके समस्या का थोड़ा सा परीक्षण किया है। यह इस प्रश्न के लिए प्रासंगिक नहीं हो सकता है लेकिन मैं इसे आपके साथ साझा करना चाहता था क्योंकि यह अभी भी दूसरों की मदद कर सकता है :)।

मैं दो परियोजनाओं (डॉटनैट नया) उत्पन्न:

  • "classlib" जो डिफ़ॉल्ट
  • पर netstandard2.0 का उपयोग करता है ... और "कंसोल" जो netcoreapp2.0 का उपयोग करता

मैंने दोनों परियोजनाओं में असेंबलीबिल्डर वर्ग के संदर्भ जोड़े। असेंबलीबिल्डर "क्लासलिब" प्रोजेक्ट में अनुपलब्ध था जो netstandard2.0 का उपयोग कर रहा है लेकिन "कंसोल" प्रोजेक्ट - netcoreapp2.0 में उपलब्ध था।

:

"समस्या" तथ्य यह है कि .NET Core Libraries are actually always a superset of the APIs defined in the corresponding version of the .NET Standard. There are always types and members available in the .NET Core Libraries, which are not (yet?) part of the .NET Standard.

ये लिंक उपयोगी हो सकता है के कारण होता है

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