Krav: Prosjektet må referere til mange tredjeparts SDK-er, og noen av dem vil referere til vanlige DLL-er (som :Newtonsoft.Json.dll), noe som vil føre til at hele prosjektet refererer til forskjellige versjoner av samme DLL, og prosjektet vil bare eksportere én fil med samme DLL-kompilerte resultater.
Enkle DLL-versjonsavhengighetsproblemer kan refereres til nedenfor:
Referanse:Innloggingen med hyperkoblingen er synlig.
Hvis den refererte DLL-en ikke bare er av en annen versjon, men også av publicKeyToken, hvordan bør den løses? I tilfellet Newtonsoft.Json.dll refererer prosjektet til en fil med en annen versjon og publicKeyToken.
- Newtonsoft.Json.dll,versjon:12.0.0.0,publicKeyToken:30ad4fe6b2a6aeed - Newtonsoft.Json.dll,versjon:4.0.0.0,publicKeyToken:null
En enkel referanseomdirigeringsinnstilling løser ikke problemet, konfigurasjonen er som følger:
Når du kaller en tredjeparts SDK-metode som er avhengig av Newtonsoft.Json versjon 4.0.0.0, vil du få følgende feil:
Mislyktes i å laste filen eller assembleren "Newtonsoft.Json, Version=4.0.0.0, Culture=neutral, PublicKeyToken=null" eller en av dens avhengigheter. Definisjonen av found assembly manifest stemmer ikke overens med assembly-referansen. (Unntak fra HRESULT:0x80131040) Løsning: Opprett en ny JSON4-mappe under bin-katalogen, plasser versjonen av Newtonsoft.Json.dll 4.0.0.0 under denne mappen, og endre konfigurasjonen som følger:
(Slutt)
|