2013-02-07 16 views
5
System.BadImageFormatException: Could not load file or assembly 'x_Accessor, 
Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. 
This assembly is built by a runtime newer than the currently loaded runtime and 
cannot be loaded. 

मैं एक कठिन समय इस बीमारी के लिए एक इलाज खोजने हो रहा है ...System.BadImageFormatException: फ़ाइल या विधानसभा लोड नहीं कर सका x_Accessor, ... 'यह विधानसभा एक रनटाइम द्वारा बनाया गया है नए

मैंने डॉट नेट टेस्ट प्रोजेक्ट्स के लिए यूनिट परीक्षण बनाए हैं। डिफ़ॉल्ट इकाई परीक्षण ढांचे के साथ। जो निजी तरीकों के परीक्षण के लिए इस्तेमाल किया जाएगा -

स्वचालित उपकरण एक एक्सेसर बनाया।

[मैं सिद्धांत पता है, निजी तरीकों उनके कॉल के माध्यम से परीक्षण किया जाना चाहिए - लेकिन फिर, यह अपने उद्देश्य, सामग्री, संदर्भ पर निर्भर करता है और इतने पर ... इसलिए यदि मैं यह कर सकते हैं, मैं उन्हें परीक्षण किया जाएगा।]

मैंने कुछ परियोजनाओं पर अतीत में ऐसा किया है, और यह ठीक काम करता है।

लेकिन इन दो परियोजनाओं मैं अब परीक्षण करने के लिए कोशिश कर रहा हूँ, मैं इस समस्या में चल रहा हूँ ...

नोट: मैं फ्रेमवर्क 3.5 का उपयोग कर रहा - एक मुद्दा हो सकता है? - लेकिन एक्सेसर को यह पता होना चाहिए!

मैं बिल्कुल कहीं नहीं देखता हूं जहां मैं असेंबली के लिए रनटाइम को संशोधित कर सकता हूं ... जो मुझे लगता है कि एक्सेसर है।

और हाँ, मैंने साफ और पुनर्निर्माण किया, मैंने आउटपुट फ़ोल्डर को पूरी तरह मिटा दिया और पुनर्निर्मित किया, मैंने एक्सेसर और निजी विधि को हटा दिया और इसे फिर से बनाया।

कृपया इसे ठीक करने में मेरी सहायता करें! धन्यवाद।

+1

आपका स्वचालित उपकरण लक्षित कर रहा है नेट 4. ilmerge की तरह कुछ का उपयोग करें। – leppie

उत्तर

6

आप उच्चतर .NET संस्करण (या सीएलआर का संस्करण अधिक सटीक होने के लिए) में संकलित एक असेंबली का संदर्भ नहीं दे सकते हैं। तो आपके उदाहरण में यदि आपके पास यूनिट परीक्षणों के लिए एक असेंबली है जो .NET 3.5 है तो आप .NET 4.0 की असेंबली का संदर्भ नहीं दे सकते।

इस उत्तर के लिए मुझे लगता है कि क्या देख रहे है: पुनर्लक्षित करने के लिए

VS2010 SP1 unit tests targeting 3.5 framework fail if using private accessor

+0

सवाल यह है - "दोनों?" क्योंकि हम दो परियोजनाओं के बारे में बात नहीं कर रहे हैं! केवल एक परियोजना है, यह डॉट नेट 3.5 है, और ... यह है। यदि आप परीक्षण परियोजना और परीक्षण परियोजना के बारे में पूछ रहे हैं, तो वे 3.5 दोनों हैं, और वे एक ही मंच पर हैं - और निजी परीक्षण को छोड़कर सभी परीक्षण ठीक से निष्पादित होते हैं। मैं वास्तव में एक अलग परियोजना के बारे में बात नहीं कर रहा हूँ !! – Thalia

+0

क्या आप विजुअल स्टूडियो का संस्करण हैं? –

+0

विजुअल स्टूडियो 2010 (एसपी 1) – Thalia

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