2016-08-06 6 views
0

私はフォーム認証を使用してIISの子アプリケーションへのアクセスを管理しています。カスタムロールプロバイダを使用するために、子アプリケーションにEntityFramework.dllが必要な理由

<authentication mode="Forms"> 
    <forms loginUrl="App/Login" timeout="60" cookieless="UseCookies" slidingExpiration="true" /> 
</authentication> 

マイフォルダ構造は次のようになります。これは、2つの問題にほとんどの部分のために働く

<membership defaultProvider="CustomMembershipProvider"> 
    <providers> 
    <clear /> 
    <add name="CustomMembershipProvider" type="<Application Name>.Security.CustomMembershipProvider, <Application Name>, Version=1.0.0.0, Culture=neutral" /> 
    </providers> 
</membership> 
<roleManager defaultProvider="CustomRoleProvider" enabled="true"> 
    <providers> 
    <clear /> 
    <add name="CustomRoleProvider" type="<Application Name>.Security.CustomRoleProvider, <Application Name>, Version=1.0.0.0, Culture=neutral" /> 
    </providers> 
</roleManager> 

: それを私はまた、カスタムロールプロバイダを使用してい

/ 
    web.config 
    /Application 
     /web.config 
    /Sites 
     /Child App 1 
     /Child App 2 

子アプリケーションにEntityFramework.dllとEntityFramework.SqlServer.dllがあり、何らかの実際のアプリケーションである場合にのみ動作します。子アプリケーションが.htmlなどでしか構成されていない場合、何らかの方法で失敗します。の前にの子アプリケーションがアクセスされるため、EntityFrameworkを追加する必要はありません。

さらに、何らかの形で失敗すると、説明のないログインページにリダイレクトされます。ユーザーが許可されていないために失敗したかどうかを知る方法はありますか?

答えて

0

EntityFramework DLLをGACに追加するだけで必要でした。 GACのバージョンが6.0より前のバージョンで間違っていたようです。

関連する問題