Šis raksts ir mašīntulkošanas spoguļraksts, lūdzu, noklikšķiniet šeit, lai pārietu uz oriģinālo rakstu.

Skats: 5752|Atbildi: 3

[Avots] [Praktiskā darbība] Konflikti starp atsaucēm uz dažādām DLL versijām, kas balstās uz novirzīšanu

[Kopēt saiti]
Publicēts 2022-10-22 10:03:33 | | | |
Prasības: Projektam ir jāatsaucas uz daudziem trešo pušu SDK, un daži no tiem atsaucas uz dažiem bieži izmantotiem DLL (piemēram, :Newtonsoft.Json.dll), kas liks visam projektam atsaukties uz dažādām viena un tā paša DLL versijām, un projekts izvadīs tikai vienu failu ar tiem pašiem DLL kompilētajiem rezultātiem.

Tālāk var atsaukties uz vienkāršām DLL versijas atkarības problēmām:

.net/c# atsauces DLL versijas konfliktu risināšana
https://www.itsvse.com/thread-4818-1-1.html
Atsauce:Hipersaites pieteikšanās ir redzama.

Ja atsauces DLL ir ne tikai citas versijas, bet arī publicKeyToken, kā tas būtu jāatrisina? Newtonsoft.Json.dll gadījumā projekts atsaucas uz failu ar citu versiju un publicKeyToken.



- Newtonsoft.Json.dll,versija:12.0.0.0,publicKeyToken:30ad4fe6b2a6aeed
- Newtonsoft.Json.dll,versija:4.0.0.0,publicKeyToken:null

Vienkāršs atsauces novirzīšanas iestatījums neatrisina problēmu, konfigurācija ir šāda:

Izsaucot trešās puses SDK metodi, kas ir atkarīga no Newtonsoft.Json versijas 4.0.0.0, tiek parādīts šāds kļūdas ziņojums:

Neizdevās ielādēt failu vai montāžu "Newtonsoft.Json, Version=4.0.0.0, Culture=neutral, PublicKeyToken=null" vai kādu no tā atkarībām. Atrastā montāžas manifesta definīcija neatbilst montāžas atsaucei. (Izņēmums no HRESULT:0x80131040)
Risinājums: Izveidojiet jaunu JSON4 mapi zem bin direktorijas, ievietojiet Newtonsoft.Json.dll 4.0.0.0 versiju šajā mapē un modificējiet konfigurāciju šādi:

(Beigas)





Iepriekšējo:[Faktiskā cīņa]. NET/C# ievieš MySQL datu bāzes dublējumus, pamatojoties uz MySqlBackup.NET
Nākamo:【Praktiskā cīņa】 Build Thunder lejupielāde un DLNA pakalpojumi mājas mediju Docker
Publicēts 2022-10-22 12:02:36 |
Iemācieties mācīties
Publicēts 2022-10-24 10:59:38 |
Šis triks darbojas, mani uztrauc 4.0 un 6.0 Newtonsoft.Json.dll
Publicēts 2022-11-12 13:08:42 |
Iemācieties mācīties
Atruna:
Visa programmatūra, programmēšanas materiāli vai raksti, ko publicē Code Farmer Network, ir paredzēti tikai mācību un pētniecības mērķiem; Iepriekš minēto saturu nedrīkst izmantot komerciāliem vai nelikumīgiem mērķiem, pretējā gadījumā lietotājiem ir jāuzņemas visas sekas. Informācija šajā vietnē nāk no interneta, un autortiesību strīdiem nav nekāda sakara ar šo vietni. Iepriekš minētais saturs ir pilnībā jāizdzēš no datora 24 stundu laikā pēc lejupielādes. Ja jums patīk programma, lūdzu, atbalstiet oriģinālu programmatūru, iegādājieties reģistrāciju un iegūstiet labākus oriģinālus pakalpojumus. Ja ir kādi pārkāpumi, lūdzu, sazinieties ar mums pa e-pastu.

Mail To:help@itsvse.com