بسته

خطای Could not load file or assembly Newtonsoft.Json

6 سال پیش
#460 نقل قول
هنگام استفاده از پلاگین درگاه پرداخت بانک ملی خطای زیر نمایش داده می شود:


Could not load file or assembly 'Newtonsoft.Json, Version=7.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)


همچنین هنگام ورود به قسمت مدیریت سیستم خطای زیر را می دهد:

Could not load file or assembly 'Newtonsoft.Json' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)

چگونه آنرا رفع کنم؟
0
6 سال پیش
#463 نقل قول
ابتدا به پوشه packages در نسخه سورس ناپ کامرس مراجعه کنید و ببینید از چه نسخه ای از Newtonsoft.Json  استفاده می کند. سپس فایل packages.config را در پروژه پلاگین باز کنید و نسخه Newtonsoft.Json را به نسخه استفاده شده در پوشه packages تغییر دهید.(مثلاNewtonsoft.Json. 5.0.6  در نسخه ناپ کامرس 3.80 و نسخه Newtonsoft.Json.9.0.1 در ناپ کامرس نسخه 3.90)

سپس داخل سورس پلاگین در بخش Refrences گزینه Newtonsoft.Json را انتخاب کنید و با استفاده از ویژگی Path مطمئن شوید که به Newtonsoft.Json در داخل پوشه packages در سورس ناپ کامرس ارجاع داده شده است. در غیر اینصورت آنرا حذف و دوباره اضافه کنید:
(با راست کلیک روی Add Refrences <-- Refrences --> دکمه Browse --> انتخاب فایل Newtonsoft.Json.dll از داخل پوشه packages\Newtonsoft.Json.9.0.1\lib\net45 برای ناپ کامرس نسخه 3.90)

همین کار را برای System.Net.Http.Formatting نیز انجام دهید. باید به فایل System.Net.Http.Formatting.dll در پوشه Packages رفرنس داشته باشد.


یادتان نرود که گزینه  Copy Local هر دو رفرنس را هم False کنید.

مجددا پروژه پلاگین را کامپایل کنید. اگر خطایی رخ نداد مشکل رفع شده است

اگر رفرنس System.Net.Http.Formatting را اضافه نکنید ممکن است خطایی مانند زیر در پلاگین درگاه پرداخت بانک ملی رخ دهد:

Assembly 'System.Net.Http.Formatting, Version=5.2.3.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' uses 'Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' which has a higher version than referenced assembly 'Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed'  

در داخل پروژه پلاگین System.Net.Http.Formatting را از داخل Refrences حذف کنید. سپس آنرا مجددا از داخل پوشه packages بصورت زیر اضافه کنید:
راست کلیک روی Add  Refrences    --> Refrence -->  دکمه Browse --> رفتن به پوشه packages  و وارد کردن عبارت System.Net.Http.Formatting در کادر جستجو --> تیک زدن گزینه System.Net.Http.Formatting یافت شده --> دکمه OK

سپس روی پروژه پلاگین راست کلیک کنید و گزینه Rebuild  را انتخاب کنید تا مجددا پلاگین کامپایل شود.

پلاگین کامپایل شده و در  پوشه   \Presentation\Nop.Web\Plugins\Payments.Melli ذخیره می شود.
0
دسته بندی ها