ফাইল বা সমাবেশ 'নিউটসনফট.জসন' বা এর অন্যতম নির্ভরতা লোড করা যায়নি। ম্যানিফেস্ট সংজ্ঞাটি সমাবেশের রেফারেন্সের সাথে মেলে না


216

অনুসন্ধানের পরে আমি যে জিনিসগুলি চেষ্টা করেছি:

  1. ওয়েব-কনফিগ-এ পুরানো সংস্করণটিতে একটি বাধ্যবাধকতা রয়েছে:

    <dependentAssembly>
        <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.1.0" />
    </dependentAssembly>
  2. কেবলমাত্র একটি নিউটনসফ্ট রেফারেন্স রয়েছে তা নিশ্চিত করতে আমার .csproj ফাইলটি সম্পাদনা করুন

    <Reference Include="Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
       <HintPath>..\packages\Newtonsoft.Json.6.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
       <SpecificVersion>False</SpecificVersion>
       <Private>True</Private>
    </Reference>
  3. প্রতিটি নিউটোনসফট.জসন.ডিলের জন্য আমার কম্পিউটার অনুসন্ধান করুন এবং প্রতি 6.0.1 সংস্করণ মুছুন এবং আমার টেম্প ফোল্ডারের সামগ্রীগুলি মুছুন

  4. ন্যুগেট ম্যানেজার কনসোলে প্যাকেজটি মেরামত / পুনরায় ইনস্টল করুন

এটি বিল্ডিংয়ে সফল হয়, তবে সাইটে যাওয়ার সময় ত্রুটিটি পায় gets

সম্পাদনা

ঠিক আছে, তারপরে আমি প্রতিটি ন্যুগেট প্যাকেজটির মতো পুনরায় ইনস্টল করার চেষ্টা করেছি এবং দেখে মনে হচ্ছে যে newtonsoft.json.dll এর 4.5 সংস্করণটি আবার যুক্ত হয়েছে তবে আমি একই ত্রুটি পেয়েছি। আমার প্রকল্পের লক্ষ্যমাত্রা ফ্রেমওয়ার্কটি নেট 4.5.৪.১ এবং এখানে এখন যে স্ট্যাক ট্রেস রয়েছে তা এখানে:

'/' আপ্লিকেশনে সারভার এরর

ফাইল বা সমাবেশ Newtonsoft.Jsonবা এর একটি নির্ভরতা লোড করা যায়নি । অবস্থিত সমাবেশের প্রকাশ্য সংজ্ঞাটি সমাবেশের রেফারেন্সের সাথে মেলে না। (এইচআরসিলেট থেকে ব্যতিক্রম 0x80131040:)

বর্ণনা: বর্তমান ওয়েব অনুরোধটি কার্যকর করার সময় একটি অযৌক্তিক ব্যতিক্রম ঘটেছে। ত্রুটি সম্পর্কে আরও তথ্যের জন্য দয়া করে স্ট্যাক ট্রেসটি পর্যালোচনা করুন এবং কোডটি এর উত্পন্ন কোথায়।

ব্যতিক্রম বিশদ:: System.IO.FileLoadExceptionফাইল বা সমাবেশ Newtonsoft.Jsonবা এর একটি নির্ভরতা লোড করা যায়নি । অবস্থিত সমাবেশের প্রকাশ্য সংজ্ঞাটি সমাবেশের রেফারেন্সের সাথে মেলে না। (এইচআরসিলেট থেকে ব্যতিক্রম 0x80131040:)

উত্স ত্রুটি:

বর্তমান ওয়েব অনুরোধটি কার্যকর করার সময় একটি অযৌক্তিক ব্যতিক্রম উত্পন্ন হয়েছিল। ব্যতিক্রমের উত্স এবং অবস্থান সম্পর্কিত তথ্য নীচে ব্যতিক্রম স্ট্যাক ট্রেস ব্যবহার করে সনাক্ত করা যেতে পারে।

সমাবেশ লোড ট্রেস: কেন অ্যাসেম্বলি লোড করা গেল না তা নির্ধারণ করতে নিম্নলিখিত তথ্য সহায়ক Newtonsoft.Jsonহতে পারে।

=== Pre-bind state information ===
LOG: DisplayName = Newtonsoft.Json
(Partial)
WRN: Partial binding information was supplied for an assembly:
WRN: Assembly Name: Newtonsoft.Json | Domain ID: 2
WRN: A partial bind occurs when only part of the assembly display name is provided.
WRN: This might result in the binder loading an incorrect assembly.
WRN: It is recommended to provide a fully specified textual identity for the assembly,
WRN: that consists of the simple name, version, culture, and public key token.
WRN: See whitepaper http://go.microsoft.com/fwlink/?LinkId=109270 for more information and common solutions to this issue.
LOG: Appbase = file:///c:/users/user/documents/visual studio 2013/Projects/foo/bar/
LOG: Initial PrivatePath = c:\users\user\documents\visual studio 2013\Projects\foo\bar\bin
Calling assembly : (Unknown).
 ===
LOG: This bind starts in default load context.
LOG: Using application configuration file: c:\users\user\documents\visual studio 2013\Projects\foo\bar\web.config
LOG: Using host configuration file: C:\Users\user\Documents\IISExpress\config\aspnet.config
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config.
LOG: Policy not being applied to reference at this time (private, custom, partial, or location-based assembly bind).
LOG: Attempting download of new URL file:///C:/Users/user/AppData/Local/Temp/1/Temporary ASP.NET Files/root/48686d37/9d7a6572/Newtonsoft.Json.DLL.
LOG: Attempting download of new URL file:///C:/Users/user/AppData/Local/Temp/1/Temporary ASP.NET Files/root/48686d37/9d7a6572/Newtonsoft.Json/Newtonsoft.Json.DLL.
LOG: Attempting download of new URL file:///c:/users/user/documents/visual studio 2013/Projects/foo/bar/bin/Newtonsoft.Json.DLL.
LOG: Using application configuration file: c:\users\user\documents\visual studio 2013\Projects\foo\bar\web.config
LOG: Using host configuration file: C:\Users\user\Documents\IISExpress\config\aspnet.config
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config.
LOG: Redirect found in application configuration file: 4.5.0.0 redirected to 6.0.1.0.
LOG: Post-policy reference: Newtonsoft.Json, Version=6.0.1.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed
LOG: Attempting download of new URL file:///C:/Users/user/AppData/Local/Temp/1/Temporary ASP.NET Files/root/48686d37/9d7a6572/Newtonsoft.Json.DLL.
LOG: Attempting download of new URL file:///C:/Users/user/AppData/Local/Temp/1/Temporary ASP.NET Files/root/48686d37/9d7a6572/Newtonsoft.Json/Newtonsoft.Json.DLL.
LOG: Attempting download of new URL file:///c:/users/user/documents/visual studio 2013/Projects/foo/bar/bin/Newtonsoft.Json.DLL.
WRN: Comparing the assembly name resulted in the mismatch: Major Version
ERR: Failed to complete setup of assembly (hr = 0x80131040). Probing terminated.

স্ট্যাক ট্রেস:

[FileLoadException: 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)]

[FileLoadException: Could not load file or assembly 'Newtonsoft.Json, Version=6.0.1.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)]
       System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +0
       System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +34
       System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) +152
       System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean forIntrospection) +77
       System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +16
       System.Reflection.Assembly.Load(String assemblyString) +28
       System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +38

[ConfigurationErrorsException: Could not load file or assembly 'Newtonsoft.Json, Version=6.0.1.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)]
       System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +752
       System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() +218
       System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai) +130
        System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) +170
       System.Web.Compilation.BuildManager.GetPreStartInitMethodsFromReferencedAssemblies() +91
       System.Web.Compilation.BuildManager.CallPreStartInitMethods(String preStartInitListPath, Boolean& isRefAssemblyLoaded) +285
       System.Web.Compilation.BuildManager.ExecutePreAppStart() +153
       System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException) +516

[HttpException (0x80004005): Could not load file or assembly 'Newtonsoft.Json, Version=6.0.1.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)]
       System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +9913572
       System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +101
       System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +254

Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.18408

2
ঠিক আছে, আমি মনে করি এটি এখন কাজ করতে পেয়েছি। আমি আমার মেশিনে প্রতিটি নিউটনসফট.জসন.ডিল মুছে ফেলেছি যা আমার সন্ধানের সর্বশেষতম সংস্করণ ছিল না, নুগেটে আমার সর্বশেষ সংস্করণ রয়েছে তা নিশ্চিত করেছিলাম এবং এটি তৈরি করেছি এবং এটি নিশ্চিত করেছিলাম যে এটি বিন ফোল্ডারের সর্বশেষতম সংস্করণ ছিল এবং এবং আমি ওয়েলকনফিগ এবং .csproj এ পরিবর্তনগুলি রেখেছি। এখন আমি অন্য ত্রুটির দিকে যাচ্ছি, সুতরাং এটি অবশ্যই কাজ করবে ...
noobieDev

1
আপনার প্রশ্নের উত্তর যুক্ত করুন যাতে লোকেরা দেখতে পায় যে এটির সমাধান হয়েছে? এবং এটিকে সমাধান হিসাবে চিহ্নিত করুন
পার হর্নশেজ-শিয়েরবেক

2
8.0.2 সংস্করণ সহ আমি আজও এই সমস্যার কিছু সংস্করণ পেয়েছি (3/1/2016)। এটি 6.0.0 সংস্করণটি লোড করার চেষ্টা করছে। আমার সমাধান 6.0.0 রেফারেন্স কোন ফাইল। 6.0.0 এর কোনও সংস্করণ নেই। .dl আমার সমাধান অঞ্চলের যে কোনও জায়গায়। আমার কম্পিউটারে newtonsoft.json.dll এর অনেকগুলি অনুলিপি রয়েছে, বিভিন্ন সংস্করণে, তারা ইনস্টল করা তৃতীয় পক্ষের সফ্টওয়্যার দ্বারা ব্যবহার করা হচ্ছে যা আমি জগাখিচুড়ি করতে চাই না। এই সমস্ত অনুলিপি অপসারণ ছাড়াও, আমি এই পুরো থ্রেডে উল্লিখিত প্রতিটি সমাধান চেষ্টা করেছি এবং কিছুই কার্যকর হয়নি।
শাওয়াইস

1
আমি যখন অন্য প্রকল্পে একটি প্রকল্পের রেফারেন্স যুক্ত করেছিলাম তখন নিউটসনফট-জসনের এই ত্রুটি বার্তাটিও আমার মুখোমুখি হয়েছিল তবে প্রকল্পগুলিতে নেট ফ্রেমওয়ার্ক একই হওয়ার পরে পৃথক ছিল both তবে ফ্রেমওয়ার্ক ত্রুটির বার্তার পরিবর্তে আমি বুঝতে পারি না কেন এটি নিউটনসফ্ট-জেসন সম্পর্কিত ত্রুটি দেখায়।
সমীর

1
আপনার সমস্ত প্রকল্পগুলিতে নিউটনসফট.জসনের একই সংস্করণ ইনস্টল করুন, যদিও তারা এটি ব্যবহার করে না।
রুবস্ট্যাক ওভারফ্লো 12

উত্তর:


274

এটি সমাধানের জন্য, আমি নিশ্চিত করেছি যে আমার সমস্ত প্রকল্পগুলি নীচের কমান্ডটি চালিয়ে এবং ফলাফলগুলি পরীক্ষা করে একই সংস্করণটি ব্যবহার করেছে:

update-package Newtonsoft.Json -reinstall

এবং, শেষ অবধি আমি আমার ওয়েবকনফিগ থেকে নিম্নলিখিতগুলি সরিয়েছি:

  <dependentAssembly>
    <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
  </dependentAssembly>

আপনি যদি আপনার সমস্ত নিউটনসফট.জসন প্যাকেজগুলি একই সংস্করণ তা নিশ্চিত করতে চান তবে আপনি সংস্করণটি এর মতো নির্দিষ্ট করতে পারেন:

update-package Newtonsoft.Json -version 6.0.0 -reinstall

17
কেবল পুনরায় ইনস্টল কমান্ডটি চালানো আমার পক্ষে কাজ করেছিল। আমার ওয়েবকনফিগটি সংশোধন করার দরকার নেই।
কিথ

4
এই ত্রুটি থেকে মুক্তি পেতে আমাকে কেবলমাত্র <d depend dependAs એવું> টি ট্যাগ যুক্ত করতে হয়েছিল।
নিক্লাস মোলার জেপসেন

3
আমাকে রূপান্তর সরবরাহ করতে হয়েছিল, তবে এটি আমার ক্ষেত্রে কাজ করার জন্য পুনরায় ইনস্টল পতাকাটি বাদ দিন।
anre

1
আমি সাম্প্রতিক সংস্করণটি 9.0.1 ব্যবহার করছি তবে এটি একই ত্রুটি দেখাচ্ছে। আমি তখন সিএসপিজেজ ফাইলে সংস্করণটি পরীক্ষা করেছিলাম এবং এটি 9.0.0.0 ছিল, এটি আমার ওয়েবকনফাইগে যুক্ত হয়েছে এবং সমস্যাটি সমাধান হয়ে গেছে। ১. সিএসপিজেজে সংস্করণটি ওয়েবকনফাইগের মতোই রয়েছে তা নিশ্চিত করুন ২. সংস্করণ সংখ্যাগুলি সম্পর্কে সতর্ক থাকুন, এটি x.0.1 বলতে পারে যখন আসল সংস্করণটি x.0.0.0 হয়, এক্সটি 6 বা 9 বা এটি যাই হোক না কেন হতে পারে ।
ইউজিন

7
নোট করুন যে ভিএস ২০১7-এ কমান্ডটি চালাতে, আপনি সরঞ্জামগুলিতে যেতে পারেন -> নুগেট প্যাকেজ ম্যানেজার -> প্যাকেজ ম্যানেজার কনসোল
গোলাপ

83

আমি নিউটনসফট.জসন ভি .0.০.৩ ব্যবহার করছি, তবে আমার ওয়েবকনফিগ ফাইলটিতে এটিই আমাকে করতে হয়েছিল:

<dependentAssembly>
        <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-4.5.0.0" newVersion="6.0.0.0" />
</dependentAssembly>

মনে রাখবেন যে আমি .0.০.৩ ব্যবহার করেও আমাকে প্রবেশ করতে হয়েছিল newVersion="6.0.0.0"

আমার প্যাকেজ.কনফিগ ফাইলটিতে আমার রয়েছে:

<package id="Newtonsoft.Json" version="6.0.3" targetFramework="net45" />

1
ঠিক একটি নোট হিসাবে, আমি নিউটনসফট.জসনের সাথে আমার যা করতে পারে তার সবই আনইনস্টল / মুছে ফেলার / মুছে ফেলার চেষ্টা করেছি, তারপরে নুগেটটি পুনরায় ইনস্টল করার জন্য, কিন্তু তবুও ত্রুটিটি পেয়েছি। আমি উল্লেখ না করে যে পরিবর্তনগুলি করেছি আমি তা এটি সঠিকভাবে কাজ করতে সক্ষম হয়েছি না।
ক্রেগভি

আমি এই সমস্যাটি অনুভব করেছি এবং এটি সনাক্তকরণে সহায়তা করার জন্য অ্যাসেম্বলি বাইন্ডিং লগ ভিউয়ারটি ব্যবহার করেছি। অ্যাসেম্বলি বাইন্ডার v6.0.3 নিউটোনসফট.জসন.ডিলকে ভি 6.0.0.0 হিসাবে রিপোর্ট করে যাতে পুনর্নির্দেশটি ব্যর্থ হয় যখন আমি এটি 6.0.3 হিসাবে কনফিগার করেছিলাম।
জেসন স্লোকম্বম্ব

"নোট" লাইনটি আমাকে সহায়তা করে। আমি প্রাথমিকভাবে 9.0.1.19813 কে বাইন্ডিংরডাইরেক্টে নতুন সংস্করণ হিসাবে ছিলাম যেহেতু ডিএলএল বলে। আমার এখন যা রয়েছে: <রেফারেন্স অন্তর্ভুক্ত করুন = "নিউটোনসফট.জসন, সংস্করণ = 9.0.0.0, সংস্কৃতি = নিরপেক্ষ, পাবলিককিটোকেন = 30ad4fe6b2a6aeed, প্রসেসরআরকিটেকচার = এমএসআইএল"> <স্পেসিফিক সংস্করণ> মিথ্যা </ স্পেসিফিক ভার্সন> << নির্ভর> <assemblyIdentity নাম = "Newtonsoft.Json" সংস্কৃতির = "নিরপেক্ষ" publicKeyToken = "30ad4fe6b2a6aeed" /> <bindingRedirect oldVersion = "0.0.0.0-9.0.0.0" newVersion = "9.0.0.0" /> </ dependentAssembly>
মার্ক Seefeldt

62

সমস্ত কম্পিউটারে আমার কম্পিউটারের একই সংস্করণ রয়েছে এবং আমার প্রকল্পগুলি সমস্ত একই রেফারেন্স পাথের দিকে ইশারা করছে তা নিশ্চিত করার পরে আমি নিম্নলিখিতটি চেষ্টা করেছিলাম। আমি এটিও নিশ্চিত করেছিলাম যে পুরানো সংস্করণটির বাঁধাই তাদের ছিল এবং আমার কাছে থাকা ডেলির বর্তমান সংস্করণে আবদ্ধ।

আমি একটি দৃ framework় কাঠামো সহ একটি পরিবেশে কাজ করি এবং কাঠামো দলটি প্রায়শই বিভিন্ন dll এর সাথে সংস্করণটিকে বিরক্ত করে।

আমি এই সমস্যাটি কীভাবে স্থির করেছি তা হল ভিজ্যুয়াল স্টুডিওতে (2013) প্যাকেজ ম্যানেজার কনসোল চালানো। সেখান থেকে আমি নিম্নলিখিত আদেশটি চালিয়েছি:

update-package Newtonsoft.Json -reinstall

অনুসরণ করেছে

update-package Newtonsoft.Json

এটি আমার সমস্ত কনফিগার ফাইল এবং প্রাসঙ্গিক প্রকল্প ফাইলগুলির মধ্য দিয়ে গেছে এবং আপডেট হয়েছে। তাদের সকলকে dll এর একই সংস্করণে বাধ্য করা। সর্বশেষতমটি পেতে আবার আপডেট করার আগে যা প্রথম দিকে সংস্করণ ছিল।


এটি আপডেটটিই আমার জন্য সমস্যাটি সমাধান করেছিল। আমার প্রকল্পটি নিউটনসফট সংস্করণ 7.0 এ আপডেট হয়েছিল updated
id.ot

আমার জন্য কাজ করেছেন। এটি করার পরে, আপনার প্যাকেজ.কনফিগ এবং ওয়েব কোডফাইগ ফাইলের মিলের সংস্করণ রয়েছে তা নিশ্চিত করে নেওয়া গুরুত্বপূর্ণ।
দ্য ভ্যালিরিয়ান গ্রুপ

নুগেট প্যাকেজ ম্যানেজার কনসোল থেকে সম্পন্ন করার পরে আমার জন্য কাজ করেছেন ধন্যবাদ!
Kbdavis07

25

আমার একই ত্রুটি বার্তা ছিল এবং যেমনটি আপনি উল্লেখ করেছেন এটি নিউটনসফট.জসন.ডিলের বিভিন্ন সংস্করণের কারণে উল্লেখ করা হয়েছে।

আমার এমভিসি সলিউশনের কয়েকটি প্রকল্প d ডিএল এর 4 সংস্করণে নুগেট প্যাকেজটি ব্যবহার করেছে।

এরপরে আমি একটি নিউগেট প্যাকেজ যুক্ত করেছি (আমার ক্ষেত্রে বিক্রয়কর্মীদের জন্য) যা নিউটোনসফট.জসন সংস্করণ 6 এটিকে প্রকল্পের একটির নির্ভরতা হিসাবে এনেছে। এটাই আমার জন্য সমস্যাটি উদ্দীপ্ত করেছিল।

জিনিসগুলি পরিষ্কার করার জন্য, আমি সমাধানের জন্য জুগ্যাসন.নেট প্যাকেজ আপডেট করার জন্য সমাধানের (সরঞ্জাম মেনু বা সমাধান ডান-ক্লিক) জন্য নিউগেট প্যাকেজ ম্যানেজারের আপডেট বিভাগটি ব্যবহার করেছি যাতে এটি সমস্ত প্রকল্পের জন্য একই সংস্করণ ছিল।

এর পরে আমি যে কোনও বাঁধাই করা পুনর্নির্দেশের লাইনগুলি নীচের মত আমার নির্বাচিত সংস্করণে চলেছে তা নিশ্চিত করতে আমি অ্যাপ কনফিগারেশন ফাইলগুলি চেক করেছি।

<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />

যদি একই এমভিসি অ্যাপ্লিকেশনের জন্য নিউটনসফট.জসনের বিভিন্ন সংস্করণের ডিএলএলগুলির নির্ভরতা থাকে তবে কী হবে? এখানেই আমি আটকা পড়েছি।
জেরেমি রে ব্রাউন

সংস্করণগুলি বিচ্ছিন্ন না হওয়ার জন্য নুগেট প্যাকেজ ম্যানেজারে একত্রীকরণ বিকল্পটি ব্যবহার করুন।
নিকো

17

ঠিক আছে, আমি মনে করি এটি এখন কাজ করতে পেয়েছি। আমি আমার মেশিনে প্রতিটি নিউটনসফট.জসন.ডিল মুছে ফেলেছি যা আমার সন্ধানের সর্বশেষতম সংস্করণ ছিল না, নুগেটে আমার সর্বশেষ সংস্করণ রয়েছে তা নিশ্চিত করেছিলাম এবং এটি তৈরি করেছি এবং এটি নিশ্চিত করেছিলাম যে এটি বিন ফোল্ডারের সর্বশেষতম সংস্করণ এবং আমি ওয়েলকনফিগ এবং .csproj এ পরিবর্তনগুলি রেখেছি। এখন আমি অন্য ত্রুটিতে চলেছি, সুতরাং এটি অবশ্যই কার্যকর হবে ..


2
আপনি কিভাবে আপনার মেশিনে সমস্ত অবস্থান অনুসন্ধান করতে গিয়েছিলেন?
ওবায়লিস

আমার পিসিতে টিম ফাউন্ডেশন সার্ভারের মাধ্যমে প্রকল্পটি পাওয়ার সময় আমি ত্রুটিটি পেয়েছি i আমার সমাধানটিতে নিউটোনসফ্টের রেফারেন্স যুক্ত করুন it এটি কাজ করেনি then ভাল কাজ
মোহাম্মদ সাদিকুর রহমান

এটা bin ফোল্ডারে ফাইলের নাম ভিতরে হয় - Newtonsoft.Json.dll এই ফাইলটি মুছে দিন এবং প্যাকেজ পুনরায় ইনস্টল বা শুধু নিম্ন সংস্করণ ইনস্টল এবং সঠিক সংস্করণ NuGet-সলিউশন ব্যবহার পুনরায় ইনস্টল
ম্যাডি

7

আমার ওয়েবকন্টফিগ এ অংশটি মন্তব্য করে আমার সমস্যার সমাধান:

<dependentAssembly>
    <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
</dependentAssembly>

তবে অবশ্যই আপনার প্যাকেজ ম্যানেজার কনসোলে এটি আপডেট করে আপনি আপডেট করেছেন বা আপনার সঠিক সংস্করণ রয়েছে তা নিশ্চিত করতে হবে:

update-package Newtonsoft.Json -reinstall

4

আমি ওলেগের পদক্ষেপগুলি চেষ্টা করেছি এবং তারা আমার একই পরিস্থিতির জন্য কাজ করেছে।

পদক্ষেপ:

  1. update-package Newtonsoft.Json -reinstallপ্যাকেজ ম্যানেজারে চালান ।

  2. binলুকানো ফাইলগুলি সক্ষম করে এবং binফোল্ডারটি মোছার মাধ্যমে আপনার মুছুন ।

  3. আপনার ভিজ্যুয়াল স্টুডিওটি বন্ধ করুন এবং এটি আবার খুলুন।

  4. এখন আবার আপনার প্রকল্প চালান। আমি বিশ্বাস করি এটা ঠিক হওয়া উচিত!


4

আপনি ওয়েবকনফিগ ফাইলে নীচে লাইন যুক্ত করে সমস্যার সমাধান করতে পারেন।

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

3

আমার ক্ষেত্রে এটি কেবল বিষয় ছিল:

Tools -> NuGet Package Manager -> Package Manager Settings -> Clear Cache

আমি যখন টিএফএস ফোল্ডারটি পুনরায় তৈরি করেছি তখন সমস্যাটি হয়েছিল।


3

আসলে আমাকে যা সাহায্য করেছিল তা হ'ল পুনঃনির্মাণ বিল্ড বন্ধ করে দেওয়া এবং আমার প্রকল্পে ভিজ্যুয়াল স্টুডিও পুনর্নির্মাণ বিকল্পটি ব্যবহার করা।


আপনি এটা কিভাবে করেছিলেন?
নাওমি

1
রিশার্পারের বিকল্পগুলিতে: সরঞ্জামগুলি -> রিশার্পার বিল্ড -> বিল্ড ইঞ্জিন - "ভিজ্যুয়াল স্টুডিও" চয়ন করুন
শৌলিয়ান

আমি কিছুক্ষণ আগে একটি পরীক্ষামূলক সংস্করণ ইনস্টল করেছি (প্রায় একমাস, আমি মনে করি) এবং তারপরে আমি এক্সটেনশনটি অক্ষম করে দিয়েছি। আমি এটি সরঞ্জামগুলিতে দেখছি না, তাই আশা করি আমি ঠিক আছি।
নাওমি

3

সরঞ্জামগুলি থেকে >> নিউগেট প্যাকেজ ম্যানেজার >> সর্বশেষ সংস্করণে সমস্ত সমাধানের সমাধান আপডেটের জন্য প্যাকেজ পরিচালনা করুন নিউটোনসফট।জসন


2

যদি আপনি কোনও ধরণের উপদ্রব নিয়ে কাজ করছেন: প্রকল্পটি মুছুন এবং এটি আবার ডাউনলোড করুন, এটি আমার পক্ষে কাজ করেছে: এস


অনেক দীর্ঘ পথ কিন্তু আমার পক্ষে অন্য কোনও সমাধান কাজ না
করায়

2

আমার কোনও টেস্ট প্রজেক্টে একই সমস্যা ছিল যার এমভিসি 5 প্রকল্পের রেফারেন্স ছিল। আমি এমভিসি 5 প্রকল্পের সাথে একীভূত হওয়ার পরে এটি ঘটেছে। আমি বর্ণিত স্টুডিও 2012 আপডেটগুলি ইনস্টল করে এটি ঠিক করেছি explained আন্দ্রে এর প্রতিক্রিয়াতে এখানে

  • আপনার ভিজ্যুয়াল স্টুডিওতে যান
    1. সরঞ্জাম> এক্সটেনশান এবং আপডেট
    2. বামদিকে অ্যাকর্ডিয়ান তালিকার "আপডেটগুলি" নির্বাচন করুন।
    3. "পণ্য আপডেট" নির্বাচন করুন।
    4. নতুন সংস্করণে আপডেট করুন

যদিও এই লিঙ্কটি প্রশ্নের উত্তর দিতে পারে, উত্তরের প্রয়োজনীয় অংশগুলি এখানে অন্তর্ভুক্ত করা এবং রেফারেন্সের জন্য লিঙ্কটি সরবরাহ করা ভাল। লিঙ্কযুক্ত উত্তরগুলি যদি লিঙ্কযুক্ত পৃষ্ঠা পরিবর্তন করে তবে অবৈধ হয়ে উঠতে পারে
২:16

আমার সমস্যা এই সমাধান সঙ্গে সংশোধন করা হয়েছে ধন্যবাদ! আমার 8.0.1 সংস্করণ ইনস্টল করা ছিল এবং ভিএস2013 আপডেট 5
ডিভিন প্রিজিয়ান

2

আমি জানি না, তবে আমার ক্ষেত্রে, আমি যদি প্রকল্প থেকে বিন ফোল্ডারটি সরিয়ে ফেলি, আমি যখন প্রকল্পটি তৈরি করি এটি newtonsoft.json এর পুরানো সংস্করণটি অনুলিপি করে, আমি প্যাকেজ ফোল্ডার থেকে নতুন সংস্করণটির dll অনুলিপি করেছিলাম এবং এটি এখনই সমাধান করে।


আমারও একি দশা. আমার সমাধানে, আমার একটি পরীক্ষার প্রকল্প রয়েছে। পরীক্ষার প্রকল্পটি বিনে 9 সংস্করণ পাচ্ছিল, তবে আমি যে প্রকল্পটি পরীক্ষা করেছিলাম তার 12 সংস্করণ ছিল I আমি পরীক্ষার বিন ফোল্ডারের অধীনে প্রকল্পটি 12 এর সংস্করণটি পরীক্ষার বিন ফোল্ডারে অনুলিপি করেছি।
জোশ জে

2

কিছু ক্ষেত্রে আপনি যদি আপনার Binএবং Objফোল্ডারগুলি মুছুন তবে এই সমস্যার সমাধান হবে।


2

ঠিক আছে তাই আমি অনুমান করি যে কাজটি করার জন্য এখানে আমার উত্তরটি দীর্ঘ তালিকাতে বনাম একটি সদৃশ প্রশ্ন তৈরির সাথে যুক্ত করা ...

আপনি যদি 2019 সালে এটি পেয়ে থাকেন,। নেট কোর 3.0 (এই সময়ে পূর্বরূপ) ব্যবহার করে, সমাধানটি হ'ল সমস্ত প্রকল্পগুলি একই। নেট নেট সংস্করণটিকে লক্ষ্য করা হচ্ছে তা নিশ্চিত করা (আমার ক্ষেত্রে 3.0)। আমি মনে করি সমাধানটির ২.১ লক্ষ্য করে আমার একটি প্রকল্প ছিল এবং বাকিগুলি ২.২ ছিল তাই আমি সম্ভবত ২.২ দিয়ে আটকে থাকতে পারতাম ...

আমার কাছে নিউটোনসফটও নেই। জসন কোনও প্রকল্পে ইনস্টল করা আছে এবং স্বাভাবিকভাবেই এগুলিতে যুক্ত করার ফলে সমস্যাটি সমাধান হয়নি।

আপনার সমাধানে .NET স্ট্যান্ডার্ড ক্লাসের লাইব্রেরি বা ডাব্লু / ই থাকলে, তাদের একই সংস্করণে থাকা দরকার না, যদিও সম্ভবত আপনি যেতে পারেন সেগুলি সম্ভবত তাদের উচিত। উদাহরণস্বরূপ, আমার .NET স্ট্যান্ডার্ড ক্লাসের লাইব্রেরিগুলি 2.2 এ রয়েছে কারণ এখনও .NET স্ট্যান্ডার্ড 3.0 নেই।


1

চেক করা উত্তর সহ উত্তরগুলির কোনওটিই আমার পক্ষে কার্যকর হয়নি।

সমাধান আরও সহজ ছিল। আমি প্রথমে আমার BUS স্তর থেকে রেফারেন্সগুলি সরিয়েছি। তারপরে প্রকল্পটি থেকে dll's মুছে ফেলা হয়েছে (এটি নিশ্চিত হয়ে গেছে তা নিশ্চিত করার জন্য), তারপরে ন্যুগেট প্যাকেজগুলি থেকে JSON.NET পুনরায় ইনস্টল করুন। এবং, জটিল অংশটি ছিল, "এটিকে আবার বন্ধ করে দেওয়া"।

আমি কেবল ভিজ্যুয়াল স্টুডিও পুনরায় চালু করেছি এবং এটি সেখানে কাজ করেছে!

সুতরাং, যদি আপনি যথাসম্ভব চেষ্টা করে থাকেন এবং এখনও সমস্যাটি সমাধান করতে না পারেন তবে ভিজ্যুয়াল স্টুডিওটি আবার চালু করার চেষ্টা করুন, এটি সাহায্য করতে পারে।


2
আমি মনে করি সরল ব্যঙ্গাত্মক ছিল।
মূল্যবান 7


1

আমি বিন ফোল্ডারে Newtonsoft.json.dll এর নিম্ন সংস্করণটি সরিয়ে সমাধান করেছি এবং Newtonsoft.json.dll V6.0.0.0 যুক্ত করেছি এবং নীচের ওয়েবকনফিগ উপাদানগুলি সরিয়েছি

<dependentAssembly>
    <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed"/>
    <bindingRedirect oldVersion="0.0.0.0-4.5.0.0" newVersion="5.0.8"/>
</dependentAssembly>

1

আমি ডটনেট কোর নিয়ে একই সমস্যা পেয়েছি এবং নিউগেট ক্যাশে সাফ করে এটি ঠিক করতে সক্ষম হয়েছি।

পাওয়ারশেলটি খুলুন এবং নিম্নলিখিত কমান্ডটি প্রবেশ করুন।

dotnet nuget locals all --clear

তারপরে আমি ভিজ্যুয়াল স্টুডিওটি বন্ধ করে দিয়ে আবার খুললাম এবং প্যাকেজ ম্যানেজার কনসোলে নিম্নলিখিত কমান্ডটি প্রবেশ করলাম:

Update-Package

নিউগেটের এখন সমস্ত প্যাকেজ পুনরুদ্ধার করা উচিত এবং নুগেট ক্যাশে আবার পপল্ট করা উচিত।

এর পরে আমি একটি লিনাক্স ধারকটিতে আমার ডটনেট কোর ওয়েবপিপি তৈরি এবং শুরু করতে সক্ষম হয়েছি।


1

সমাধান যে এই জন্য আমার সমস্যা সমাধান

গোটো রেফারেন্স-> Newtonsoft.json - র বৈশিষ্ট্যে রাইট ক্লিক করুন এবং সংস্করণটি দেখুন

এই একই সংস্করণ থাকা উচিত

<dependentAssembly>
    <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-YourDllVersion" newVersion="YourDllVersion" />
</dependentAssembly>

1

কয়েক ঘন্টা এর সাথে লড়াই করার পরে ... আমি নিম্নলিখিতগুলি করেছি:

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-12.0.0.0" newVersion="12.0.0.0" />
    </dependentAssembly>

    <!-- other assemblies... -->

  </assemblyBinding>
</runtime>

সঠিক নিউ ভার্সন এবং ওল্ড ভার্সন নম্বর প্রবেশের কীটি প্রকল্পটির খোলা আছে References প্যাকেজটি তার বৈশিষ্ট্যগুলিতে যান বা এটি ক্লিক করুন এটিalt + enter

আপনি এমন একটি বিভাগ খুঁজে পাবেন Versionযা আমার ক্ষেত্রে ছিল 12.0.0.0যখন আসলে 12.0.3নুগেট পরিচালনা করার সাথে অন্বেষণ করার সময়।

সুতরাং আপনাকে রেফারেন্স বৈশিষ্ট্যগুলি থেকে প্যাকেজের সংস্করণটি বেছে নিতে হবে (আমার ক্ষেত্রে 12.0.0.0)

অবশেষে, cleanএবং rebuildপ্রকল্প (আপনি সম্ভবত মুছে ফেলতে চাইতে পারেন binএবংobj আগে ফোল্ডারগুলি )।

আপনি অন্যান্য প্যাকেজ নির্ভরতা সমস্যার মুখোমুখি হতে পারেন, আমি এটি সবার জন্য করেছি এবং তারা কাজ করেছে।


0

সহজ পদক্ষেপ। (1) প্যাকেজ ম্যানেজারে "আপডেট-প্যাকেজ নিউটনসফট.জসন-রিইনস্টল" চালান।

(২) লুকানো ফাইলগুলি সক্রিয় করে এবং বিন ফোল্ডারটি মোছার মাধ্যমে আপনি বিন মুছুন।

(3) আপনার ভিজ্যুয়াল স্টুডিওটি বন্ধ করুন এবং এটি আবার খুলুন।

(4) এখন আপনার প্রকল্পটি আবার চালান। আমি বিশ্বাস করি এটা ঠিক হওয়া উচিত


0

আমি এই সমস্যায় পড়েছি কারণ আমার ছিল: প্রজেক্ট এ (একটি ডেস্কটপ। এক্সেক্স) প্রজেক্ট বি (একটি পোর্টেবল .dll) দেখুন। A&B এর JSON.Net এর বিভিন্ন সংস্করণ ছিল এবং তাই এখানে একটি লোডার সংঘাত হয়েছিল। আমি একবার JSON.net এর সমস্ত সংস্করণ একই হয়ে গেলে এটি কার্যকর হয়েছিল। (উপরের সমাধানগুলির কিছু এটি কার্যকরভাবে করছে - আমি কেন এটি কাজ করে তা কল করছি)


0

আমি সম্প্রতি এবং পুরানো প্রকল্পের সাথে এটির সাথে লড়াই করেছি।

আমি আসলে ডিনারের কোন সংস্করণটি বিন ফোল্ডারে ছিল তা যাচাই করার পরে আমি সমস্যাটি সন্ধান করতে পেরেছি।

আমার একটি পোস্ট-বিল্ড স্ক্রিপ্ট ছিল যা একটি ডিএল লাইব্রেরি ফোল্ডার থেকে বিন ফোল্ডারে নির্ভরশীল অ্যাসেমব্লিগুলি অনুলিপি করে। নুগেটের আগের দিনগুলির একটি সাধারণ সেটআপ।

তাই প্রতিবারই আমি পোস্ট-বিল্ড-এর স্ক্রিপ্টটি পুরনোটির সাথে জসন.নেটের সঠিক সংস্করণটি প্রতিস্থাপন করেছি


0

আমার ঠিক একই সমস্যা ছিল এবং আমার জন্য ভিজ্যুয়াল স্টুডিও 13 ডিফল্ট লাইব্রেরি 4.5 ছিল, সুতরাং আমার কাছে 2 টি সমাধান রয়েছে যা একটি ওয়েবকনফাইগ ফাইলে এর রেফারেন্সটি নিয়ে যায়। এটি একটি সর্বশেষ অবলম্বন এবং এটি কাজ করে।

ত্রুটি বার্তায় উল্লেখ করা হয়েছে যে এই স্থানে / প্রকল্পগুলি / ফু / বার / বিন / নিউটোনসফট.জসন.ডিএলএলে একটি সমস্যা রয়েছে। ডিএলএল কোথায়! একটি মৌলিক সম্পত্তি চেক আমাকে বলেছিল এটি 4.5.0.0 বা একই রকম তাই আমি ওয়েবকনফিগকে 4.5 পর্যন্ত দেখতে এবং 4.5 ব্যবহার করতে পরিবর্তন করে।


0

এই বিকল্পগুলির কোনওটিই আমার পক্ষে কাজ করে নি, শেষ পর্যন্ত ছিল;

পরীক্ষা> পরীক্ষার সেটিংস> * .ট্রেস্টুনকনফিগ

আমাকে একটি নতুন লাইন যুক্ত করতে হয়েছিল

<DeploymentItem filename="packages\Newtonsoft.Json.4.5.8\lib\net40\Newtonsoft.Json.dll" />

আপনার সেটআপের জন্য পথ এবং সংস্করণ সঠিক কিনা তা নিশ্চিত করুন।


0

আমারো একই ইস্যু ছিল. আমি একটি ওয়েব এপিআই প্রকল্প তৈরি করেছি এবং তারপরে এটি নেট .৪.৪.১ থেকে নেট 4..6.১ এ আপগ্রেড করেছি। আইডিই বন্ধ করা, আইআইএস বন্ধ করা এবং সি এর বিষয়বস্তু মুছে ফেলা: \ উইন্ডোজ \ মাইক্রোসফট.নেট \ ফ্রেমওয়ার্ক \ v4.0.30319 \ অস্থায়ী এএসপি.এনইটি ফাইল ir dir সমস্যা সমাধান করেছে।

আছে HTH


0

এই সমস্যাটি আমার কাছে নুগেট প্যাকেজগুলি রিফ্রেশ করে বা প্রকল্পের "ক্লিন" করে সমাধান করা হয়নি। ম্যানুয়ালি "আপত্তি" ফোল্ডারটি সাফ করে এটি সমাধান করা হয়েছিল।


0

এই সমস্যার আমার সমাধান এখানে, নিশ্চিত করুন যে অ্যাপকনফিগ বা প্যাকেজকনফিগের সংস্করণ নম্বরটি আপনার রেফারেন্সের রেফারেন্স সংস্করণ হিসাবে একই। এখানে দেখুন

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.