2012-01-20 8 views
5
私は RedirectingToIdentityProviderイベントにsubcribeしようとしています

にヌルですが、ヌルFederatedAuthentication.WSFederationAuthenticationModuleあるFederatedAuthentication.WSFederationAuthenticationModuleは<strong>のApplication_Start()</strong>でランタイム

コードが

protected void Application_Start() 
{ 
FederatedAuthentication.WSFederationAuthenticationModule.RedirectingToIdentityProvider += WSFederationAuthenticationModule_RedirectingToIdentityProvider; 
} 
+0

同じ問題は、@garrettが結果なしで提案したようにしました。 –

+0

誰かがこれに関する答えを得ましたか? –

答えて

3

それはあなたのように聞こえるかもしれませんご使用の構成にWSFederationAuthenticationModuleがありません。あなたはsystem.webServer\modulesでこれを持っていることを確認してください:

system.web\httpModules
<add name="WSFederationAuthenticationModule" type="Microsoft.IdentityModel.Web.WSFederationAuthenticationModule, Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" preCondition="managedHandler" /> 

そして、この:

<add name="WSFederationAuthenticationModule" type="Microsoft.IdentityModel.Web.WSFederationAuthenticationModule, Microsoft.IdentityModel, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /> 

読むhere詳細については。

+0

Web設定ではなく実行時に追加できますか? – Homam

4

私の仕事です。ここで

void Application_Start() 
{ 
    FederatedAuthentication.ServiceConfigurationCreated += OnServiceConfigurationCreated; 
} 


void OnServiceConfigurationCreated(object sender, ServiceConfigurationCreatedEventArgs e) 
{ 
    FederatedAuthentication.WSFederationAuthenticationModule.RedirectingToIdentityProvider += WSFederationAuthenticationModule_RedirectingToIdentityProvider; 
} 
+5

'.ServiceConfigurationCreated'は' System.IdentityModel.Services.FederatedAuthentication'(.NET 4.5の実装)にはないと思います。 –

3

.NET 4.0

<system.web> 
    <httpModules> 
      <add name="WSFederationAuthenticationModule" type="System.IdentityModel.Services.WSFederationAuthenticationModule, System.IdentityModel.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> 
    </httpModules> 
</system.web> 
.... 
<system.webServer>  
    <modules>  
     <add name="WSFederationAuthenticationModule" type="System.IdentityModel.Services.WSFederationAuthenticationModule, System.IdentityModel.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" preCondition="managedHandler" />  
    </modules> 
</system.webServer> 
2

のための精度は、あなたが

System.IdentityModel.Services.WSFederationAuthenticationModule 

ないを参照し、あなたのGlobal.asaxの中にいることを確認している。

Microsoft.IdentityModel.Web.FederatedAuthentication.WSFederationAuthenticationModule 

間違っている(web.configとglobal.asax)参照により、WSFederationAuthenticationModuleがnullになります。

関連する問題