Reikalavimai: Projektas turi nurodyti daug trečiųjų šalių SDK, o kai kurie iš jų nurodys kai kuriuos dažniausiai naudojamus DLL (pvz., :Newtonsoft.Json.dll), todėl visas projektas nurodys skirtingas to paties DLL versijas, o projektas išves tik vieną failą su tais pačiais DLL sukompiliuotais rezultatais.
Paprastas DLL versijos priklausomybės problemas galima nurodyti toliau:
Nuoroda:Hipersaito prisijungimas matomas.
Jei nurodytas DLL yra ne tik kitos versijos, bet ir publicKeyToken, kaip tai turėtų būti išspręsta? Newtonsoft.Json.dll atveju projektas nurodo failą su kita versija ir publicKeyToken.
- Newtonsoft.Json.dll,versija:12.0.0.0,publicKeyToken:30ad4fe6b2a6aeed - Newtonsoft.Json.dll,versija:4.0.0.0,publicKeyToken:null
Paprastas nuorodų peradresavimo nustatymas problemos neišsprendžia, konfigūracija yra tokia:
Kai iškviečiate trečiosios šalies SDK metodą, kuris priklauso nuo Newtonsoft.Json 4.0.0.0 versijos, gausite šią klaidą:
Nepavyko įkelti failo arba rinkinio "Newtonsoft.Json, Version=4.0.0.0, Culture=neutral, PublicKeyToken=null" arba vienos iš jo priklausomybių. Rastas surinkimo deklaracijos apibrėžimas neatitinka rinkinio nuorodos. (Išimtis iš HRESULT:0x80131040) Sprendimas: Sukurkite naują JSON4 aplanką šiukšliadėžės kataloge, įdėkite Newtonsoft.Json.dll 4.0.0.0 versiją į šį aplanką ir pakeiskite konfigūraciją taip:
(Pabaiga)
|