2016-07-06 42 views
12

Ho aggiornato il progetto Web Api esistente per utilizzare l'ultimo pacchetto System.IdenityModel.Tokens.Jwt e sto ottenendo quanto segue errore:Eccezione utilizzando System.IdentityModel.Tokens.Jwt 5.0.0.127 in Web Api 2 su .Net 4.6

Impossibile caricare il tipo 'System.IdentityModel.Tokens.TokenValidationParameters' dall'assembly 'System.IdentityModel.Tokens.Jwt, Version = 5.0.0.127, Culture = neutral, PublicKeyToken = 31bf3856ad364e35 '.

Tutto funziona correttamente con la versione 4.0 dello stesso pacchetto. Qualcuno ha lo stesso problema se così come risolvere questo?

Soma.

risposta

18

Ho trovato una soluzione alternativa per il problema. Sembra che questo sia un problema noto. Si prega di leggere this.

Grazie, Soma.

+1

Link non mi ha davvero aiutato. Qual è la soluzione? – Zapnologica

+4

Come per il post, la versione 5 non è compatibile con il vecchio middleware owin. Ecco il dettaglio "Bene - 5.0 significa rompere i cambiamenti, forse non è compatibile con il vecchio middleware OWIN" dal link. Si prega di utilizzare la versione 4.0.2.206221351. Non stavo usando il server delle identità, ma il problema con system.identitymodel versione 5 è applicabile a qualsiasi vecchio framework katana. Spero che questo ti aiuti. –

+0

Ho usato il comando nuget dal collegamento e ha funzionato. Install-Package System.IdentityModel.Tokens.Jwt -Version 4.0.2.206221351 –

1

Se si desidera utilizzare la nuova versione (v5) di System.IdentityModel.Tokens.Jwt e non si desidera limitare il progetto alla versione v4, ho creato un progetto Nuget e Github denominato EasyJwtAuth che utilizza v5 (Molto semplice da usare): pacchetto

Nuget: https://www.nuget.org/packages/EasyJwtAuth

le istruzioni su come usare: https://github.com/Xela101/EasyJwtAuth

Sentitevi liberi di aggiornare il repository con più funzioni, o semplicemente imparare/copiare il codice e crea il tuo wrapper di autenticazione.