2017-08-04 32 views
0

我最近被迫更新我的System.IdentityModel.Tokens.Jwt NuGet包到5.1.4,因爲另一個NuGet包。 更改後的大部分代碼似乎很容易解決,但現在ConfigurationManager<OpenIdConnectConfiguration>()需要兩個參數而不是一個! 我找不到任何有關如何使用此新版Configuration Manager的示例!如何使用ConfigurationManager? (Microsoft.IdentityModel.Protocols)

我使用它,因爲這部分代碼:

string stsDiscoveryEndpoint = string.Format("{0}/.well-known/openid-configuration", authority); 

ConfigurationManager<OpenIdConnectConfiguration> configManager = new ConfigurationManager<OpenIdConnectConfiguration>(stsDiscoveryEndpoint, IConfigurationRetriever<>); 

OpenIdConnectConfiguration config = await configManager.GetConfigurationAsync(); 
_issuer = config.Issuer; 
_signingTokens = config.SigningTokens.ToList(); 

_stsMetadataRetrievalTime = DateTime.UtcNow; 

任何人都可以讓我知道ConfigurationManager期待什麼樣的參數

回答

3

我發現,爲了與版本ConfigurationManager工作> = 5.1.4 System.IdentityModel.Tokens.Jwt NuGet包你必須添加OpenIdConnectConfigurationRetriever()作爲第二個參數。

ConfigurationManager正確調用則是:

ConfigurationManager<OpenIdConnectConfiguration> configManager = new ConfigurationManager<OpenIdConnectConfiguration>(stsDiscoveryEndpoint, new OpenIdConnectConfigurationRetriever()); 
相關問題