title: Could not load type 'System.IdentityModel.Tokens.JwtSecurityToken'
body: <p>I have two libraries. One consumes the other and the consuming library is is itself used by a Web app. The Web app returns the error below whereas the code instantiating the type ( doping JWT signature validation ) is successfully executed in unit tests by both libraries. libraries, app are target framework .NET 4.5.2 I validated that the Web app's .csproj file has a valid reference</p>
  
  <pre><code>&lt;Reference Include="System.IdentityModel.Tokens.Jwt, Version=5.1.4.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL"&gt;      &lt;HintPath&gt;..\packages\System.IdentityModel.Tokens.Jwt.5.1.4\lib\net451\System.IdentityModel.Tokens.Jwt.dll&lt;/HintPath&gt;
   &lt;/Reference&gt;
  </code></pre>
  
  <p>I do not find the assembly in the GAC to remove</p>
  
  <pre><code>C:\Program Files (x86)\Microsoft Visual Studio 11.0&gt;gacutil /u System.IdentityMo
  del.Tokens.Jwt
  Microsoft (R) .NET Global Assembly Cache Utility.  Version 4.0.30319.17929
  Copyright (c) Microsoft Corporation.  All rights reserved.
  
  No assemblies found matching: System.IdentityModel.Tokens.Jwt
  Number of assemblies uninstalled = 0
  Number of failures = 0
  </code></pre>
  
  <p>I have tried clean, rebuild, reboot, delete /bin and /lib and rebuilt and am at a loss. Personally, this may not be System.IdentityModel.Tokens.Jwt per se, but guidance I need on troubleshooting such as type loading errors. I have resintalled the .Tokens package specifically and indeed all packages: </p>
  
  <pre><code>nuget install packages.config
  </code></pre>
  
  <p>I still get the error, not on build, but only on execution:</p>
  
  <pre><code>Server Error in '/' Application.
  
  Could not load type 'System.IdentityModel.Tokens.JwtSecurityToken' from assembly 'System.IdentityModel.Tokens.Jwt, Version=5.1.4.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.
  
  Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 
  
  Exception Details: System.TypeLoadException: Could not load type 'System.IdentityModel.Tokens.JwtSecurityToken' from assembly 'System.IdentityModel.Tokens.Jwt, Version=5.1.4.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.
  
  Source Error: 
  
  
  Line 12:     protected void Application_Start(object sender, EventArgs e)
  Line 13:     {
  Line 14:       GlobalConfiguration.Configure(WebApiConfig.Register);
  Line 15:     }
  Line 16: 
  
  Source File: C:\Dev\Git\Connect-Applications\ControllerlessApp\src\Connect.Rest.MainApp\Global.asax.cs    Line: 14 
  
  Stack Trace: 
  
  
  [TypeLoadException: Could not load type 'System.IdentityModel.Tokens.JwtSecurityToken' from assembly 'System.IdentityModel.Tokens.Jwt, Version=5.1.4.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.]
     System.Reflection.RuntimeAssembly.GetExportedTypes(RuntimeAssembly assembly, ObjectHandleOnStack retTypes) +0
     System.Reflection.RuntimeAssembly.GetExportedTypes() +31
     Plex.Web.UI.ServiceResolverDefaults..ctor() +842
  
  [TargetInvocationException: Exception has been thrown by the target of an invocation.]
     System.RuntimeTypeHandle.CreateInstance(RuntimeType type, Boolean publicOnly, Boolean noCheck, Boolean&amp; canBeCached, RuntimeMethodHandleInternal&amp; ctor, Boolean&amp; bNeedSecurityCheck) +0
     System.RuntimeType.CreateInstanceSlow(Boolean publicOnly, Boolean skipCheckThis, Boolean fillCache, StackCrawlMark&amp; stackMark) +138
     System.Activator.CreateInstance(Type type, Boolean nonPublic) +105
     System.Activator.CreateInstance(Type type) +12
     Plex.Activation.AssemblyDefaultRegistrationConvention.Process(Type type, Registry registry) +118
     StructureMap.StringExtensions.Each(IEnumerable`1 enumerable, Action`1 action) in c:\BuildAgent\work\767273992e840853\src\StructureMap\Extensions.cs:10
     StructureMap.StringExtensions.Each(IEnumerable`1 enumerable, Action`1 action) in c:\BuildAgent\work\767273992e840853\src\StructureMap\Extensions.cs:10
     StructureMap.Graph.AssemblyScanner.ScanForAll(PluginGraph pluginGraph) in c:\BuildAgent\work\767273992e840853\src\StructureMap\Graph\AssemblyScanner.cs:248
     StructureMap.Graph.PluginGraph.Seal() in c:\BuildAgent\work\767273992e840853\src\StructureMap\Graph\PluginGraph.cs:121
     StructureMap.PluginGraphBuilder.Build() in c:\BuildAgent\work\767273992e840853\src\StructureMap\PluginGraphBuilder.cs:72
     StructureMap.Container..ctor(Action`1 action) in c:\BuildAgent\work\767273992e840853\src\StructureMap\Container.cs:25
     Plex.Activation.ServiceResolverBuilder.Initialize(ApplicationContext context) +288
     Connect.Rest.Framework.Hosting2.Infrastructure.AppDomainSharedServices.get_ServiceResolver() +1373
     Connect.Rest.Framework.Hosting2.WebApiConfig.Register(HttpConfiguration config) +80
     System.Web.Http.GlobalConfiguration.Configure(Action`1 configurationCallback) +63
     Connect.Rest.MainApp.WebApiApplication.Application_Start(Object sender, EventArgs e) in C:\Dev\Git\Connect-Applications\ControllerlessApp\src\Connect.Rest.MainApp\Global.asax.cs:14
  
  [HttpException (0x80004005): Exception has been thrown by the target of an invocation.]
     System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode(HttpContext context, HttpApplication app) +544
     System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) +186
     System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) +172
     System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +402
     System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +343
  
  [HttpException (0x80004005): Exception has been thrown by the target of an invocation.]
     System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +579
     System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +112
     System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +716
  </code></pre>