2017-03-17 17 views
5

मैं इस मुद्दे से संबंधित कई धागे पाया में से एक है, लेकिन उन में से कोई भी मेरी समस्या हल हो जाती।फ़ाइल या विधानसभा लोड नहीं कर सका log4net, संस्करण = 2.0.8.0, संस्कृति = तटस्थ, PublicKeyToken = 1b44e1d426115821 'या अपनी निर्भरता

मैं पहले ASP.NET सेवाओं में log4net version 1.2.10.0 का उपयोग कर रहा हूं। मैंने इसे वर्तमान संस्करण में अपडेट किया है जो log4net v2.0.8.0 है, कुछ तृतीय पक्ष पुस्तकालयों के कारण मैंने पुराने संस्करणों का समर्थन/पुनर्निर्देशित करने के लिए अपने web.config में निम्न पंक्तियां भी शामिल की हैं।

<runtime>  
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">  
     <dependentAssembly> 
     <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" /> 
     <bindingRedirect oldVersion="0.0.0.0-9.0.0.0" newVersion="9.0.0.0" /> 
     </dependentAssembly>  
     <dependentAssembly> 
     <assemblyIdentity name="log4net" publicKeyToken="1b44e1d426115821" culture="neutral" /> 
     <bindingRedirect oldVersion="0.0.0.0-1.2.10.0" newVersion="2.0.8.0" />  
     </dependentAssembly>  
    </assemblyBinding> 
</runtime> 

मैं भी इन संदेशों में उलझन में हूँ इनर अपवाद: ((System.IO.FileLoadException) ex.InnerException.InnerException) .Message

फ़ाइल या विधानसभा लोड नहीं कर सका log4net , संस्करण = 1.2.10.0, संस्कृति = तटस्थ, PublicKeyToken = 1b44e1d426115821 'या उसके निर्भरता में से एक। स्थित असेंबली की स्पष्ट परिभाषा असेंबली संदर्भ से मेल नहीं खाती है। (HRESULT से अपवाद: 0x80131040)

अपवाद संदेश:

फ़ाइल या विधानसभा लोड नहीं कर सका log4net, संस्करण = 2.0.8.0, संस्कृति = तटस्थ, PublicKeyToken = 1b44e1d426115821 ' या इसकी निर्भरताओं में से एक। स्थित असेंबली की स्पष्ट परिभाषा असेंबली संदर्भ से मेल नहीं खाती है। (HRESULT से अपवाद: 0x80131040)

शायद निम्नलिखित लाइनों FusionLog में जारी की ओर इशारा करते

WRN: तुलना विधानसभा नाम मेल नहीं खाता में हुई: सार्वजनिक कुंजी टोकन ERR: पूर्ण करने में असमर्थ असेंबली का सेटअप (एचआर = 0x80131040)। समाप्त की जांच कर

पूरा FusionLog

=== पूर्व बाँध राज्य सूचना === लॉग इन करें: DisplayName = log4net, संस्करण = 1.2.10.0, संस्कृति = तटस्थ, PublicKeyToken = 1b44e1d426115821 (पूरी तरह से निर्दिष्ट) लॉग: ऐपबेस = फ़ाइल: /// एफ:/कैब प्रबंधन सिस्टम/सीएमएस-लोकलाइज्ड/सीएमएस-कोड/वेब सर्विसेज/सीएमएसएपीआई/लॉग: प्रारंभिक प्राइवेटपाथ = एफ: \ कैब प्रबंधन सिस्टम \ सीएमएस- स्थानीयकृत \ सीएमएस-कोड \ वेब सेवा \ CMSAPI \ bin कॉलिंग असेंबली : paypal_base, संस्करण = 4.4.55.0, संस्कृति = तटस्थ, PublicKeyToken = b37401294aaf5617। === LOG: यह बाइंड डिफ़ॉल्ट लोड संदर्भ में शुरू होता है। लॉग: एप्लिकेशन कॉन्फ़िगरेशन फ़ाइल का उपयोग करना: एफ: \ कैब प्रबंधन सिस्टम \ सीएमएस-लोकलाइज्ड \ सीएमएस-कोड \ वेब सर्विसेज \ CMSAPI \ web.config LOG: होस्ट कॉन्फ़िगरेशन फ़ाइल का उपयोग करना: सी: \ उपयोगकर्ता \ डेल \ दस्तावेज़ \ IISExpress \ config \ aspnet.config लॉग इन करें: सी से मशीन विन्यास फाइल का उपयोग करते हुए: \ Windows \ Microsoft.NET \ फ्रेमवर्क \ v4.0.30319 \ config \ machine.config। LOG: एप्लिकेशन कॉन्फ़िगरेशन फ़ाइल में पाया गया रीडायरेक्ट: 1.2.10.0 2.0.8.0 पर रीडायरेक्ट किया गया। लॉग: पोस्ट-पॉलिसी संदर्भ: लॉग 4नेट, संस्करण = 2.0.8.0, संस्कृति = तटस्थ, पब्लिककेट टोकन = 1b44e1d426115821 LOG: नया यूआरएल फ़ाइल डाउनलोड करने का प्रयास: /// सी: /विंडोज़/माइक्रोसॉफ्ट.NET/Framework/v4। 0.3031 9/अस्थायी एएसपी.नेट फ़ाइलें/बनाम/864fb64d/ad78f51e/log4net.DLL। लॉग: नए यूआरएल फ़ाइल का डाउनलोड करने का प्रयास: /// सी: /विंडोज़/माइक्रोसॉफ्ट.NET/Framework/v4.0.30319/ समकालीन एएसपी.नेट फ़ाइलें/बनाम/864fb64d/ad78f51e/log4net/log4net.DLL। लॉग: नई यूआरएल फ़ाइल डाउनलोड करने का प्रयास: /// एफ:/कैब प्रबंधन सिस्टम/सीएमएस-लोकलाइज्ड/सीएमएस-कोड/वेब सर्विसेज/सीएमएसएपीआई/बिन/log4net.DLL। डब्लूआरएन: असेंबली नाम की तुलना में विसंगति हुई: सार्वजनिक कुंजी टोकन ईआरआर: असेंबली के सेटअप को पूरा करने में विफल (एचआर = 0x80131040)। प्रोबिंग समाप्त हो गया।

सुझाव

स्टैक ट्रेस

com.paypal.sdk.profiles पर मैं/बिन फ़ोल्डर में दोनों .dll डाल करने की आवश्यकता है,। बेसपिप्रोफाइल..क्टर() com.paypal.sdk.profiles.ProfileFactory.createSignatureAPIProfile()
एफ में PayPalLibrary.PayPalPayment.SetPaymentProfile (स्ट्रिंग rsUserName, स्ट्रिंग rsPassword, स्ट्रिंग rsSignature, स्ट्रिंग rsEnviroment, स्ट्रिंग rsIpAddress) पर: \ पथ \ वर्ग \ PayPalPayment.cs: लाइन API.ServiceBLL.DoCreditCardPayment पर 34 (स्ट्रिंग txtNameOnCard, स्ट्रिंग ddlExpiryMonth, स्ट्रिंग ddlExpiryYear, स्ट्रिंग txtCardNo, स्ट्रिंग txtCv2, स्ट्रिंग राशि, एफ में स्ट्रिंग & paymentServiceType): \ पथ \ ServiceBLL.cs: लाइन 2907

अद्यतन

टिप्पणियों में सिप्रियन लिपैन के सुझाव के बाद, मुझे यह प्रविष्टि .csproj में मिली जिसमें PublicKeyToken मेरे web.config से अलग था। मैंने इस टोकन की प्रतिलिपि बनाई और कॉन्फ़िगरेशन में बदल दिया और केवल अपवाद संदेश मिला, आंतरिक अपवाद चला गया। bellow में .csproj

<Reference Include="log4net, Version=2.0.8.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL"> 
     <HintPath>packages\log4net.2.0.8\lib\net45-full\log4net.dll</HintPath> 
     <Private>True</Private> 
</Reference> 

अपवाद प्रविष्टि है

Could not load file or assembly 'log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=**1b44e1d426115821**' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040) 

लेकिन मैं नया एक FusionLog

.csproj

में पाया साथ config में टोकन chnaged === प्री-बाइंड स्टेट जानकारी === LOG: DisplayName = log4net, संस्करण = 1.2.10.0, संस्कृति = तटस्थ, PublicKeyToken = 1b44e1d426115821 (पूरी तरह से निर्दिष्ट) लॉग: ऐपबेस = फ़ाइल: /// एफ:/पथ/एपीआई/लॉग: प्रारंभिक PrivatePath = एफ: \ path \ API \ bin कॉलिंग असेंबली : paypal_base, संस्करण = 4.4.55।0, संस्कृति = तटस्थ, PublicKeyToken = b37401294aaf5617। === LOG: यह बाइंड डिफ़ॉल्ट लोड संदर्भ में शुरू होता है। लॉग: अनुप्रयोग कॉन्फ़िगरेशन फ़ाइल का उपयोग करना: F: \ path \ API \ web.config LOG: होस्ट कॉन्फ़िगरेशन फ़ाइल का उपयोग करना: सी: \ उपयोगकर्ता \ मुझे \ दस्तावेज़ \ IISExpress \ config \ aspnet.config LOG: मशीन कॉन्फ़िगरेशन फ़ाइल का उपयोग करना सी: \ विंडोज \ माइक्रोसॉफ्ट.NET \ Framework \ v4.0.30319 \ config \ machine.config। लॉग इन करें: पोस्ट-नीति संदर्भ: log4net, संस्करण = 1.2.10.0, संस्कृति = तटस्थ, PublicKeyToken = 1b44e1d426115821 लॉग इन करें: प्रयास कर रहा है नया URL फ़ाइल के डाउनलोड: /// C: /Windows/Microsoft.NET/Framework/v4 .0.3031 9/अस्थायी एएसपी.नेट फ़ाइलें/बनाम/864fb64d/ad78f51e/log4net.DLL। लॉग: नए यूआरएल फ़ाइल का डाउनलोड करने का प्रयास: /// सी: /विंडोज़/माइक्रोसॉफ्ट.NET/Framework/v4.0.30319/ समकालीन एएसपी.नेट फ़ाइलें/बनाम/864fb64d/ad78f51e/log4net/log4net.DLL। लॉग: नई यूआरएल फ़ाइल डाउनलोड करने का प्रयास: /// एफ: /path/API/bin/log4net.DLL। डब्लूआरएन: असेंबली नाम की तुलना में विसंगति हुई: मेजर वर्जन ईआरआर: असेंबली के सेटअप को पूरा करने में विफल (एचआर = 0x80131040)। प्रोबिंग समाप्त हो गया।

+0

आप बाँध रीडायरेक्ट का उपयोग करते हैं, तो आप हमेशा नवीनतम संस्करण पर ले जाना चाहिए अगर यह काम करता है '' देखते हैं। इसके अलावा, सुनिश्चित करें कि आपके एंट्री प्रोजेक्ट में, आपके पास DLL – Catalin

+0

@RaraituL का यह संस्करण है, इसके साथ कोई भाग्य नहीं है। एक ही अपवाद – user6594294

+0

.csproj से अपना संदर्भ देखें। क्या यह सही डीएलएल फ़ाइल को इंगित करता है (log4net.dll सही है?) –

उत्तर

2

अपाचे ने अपनी सार्वजनिक कुंजी, तर्क बदलने का फैसला किया! similar post here में एक समाधान है।

या आप पुरानी सार्वजनिक कुंजी टोकन के साथ पुराने 1.2.10.0 संस्करण में अपना संदर्भ वापस कर सकते हैं। nuget log4net 1.2.10.0

+0

मैं आईआईएस का उपयोग कर रहा हूं, क्या इससे कोई फर्क पड़ता है? – user6594294

+0

नहीं, अपाचे लॉग 4नेट का निर्माता है, इसलिए मैं आपके द्वारा उपयोग की जाने वाली होस्टिंग सेवा के बारे में बात नहीं कर रहा हूं। – TwistedStem

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

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