こんにちは、SimpleMembershipProvider を asp.net mvc アプリに統合しようとしていますが、いくつか問題があるようです。
これは私のweb.configにあるものです:
<membership defaultProvider="SimpleMembershipProvider">
<providers>
<add name="SimpleMembershipProvider" type="WebMatrix.WebData.SimpleMembershipProvider"/>
</providers>
</membership>
これは、ユーザーにログインするために実行しようとしているコードです。
public bool Login(string userName, string password, bool rememberMe)
{
return WebSecurity.Login(userName, password, rememberMe);
}
このすべての get が呼び出される前に、次の属性コード get が呼び出され、正常に動作します。
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, AllowMultiple = false, Inherited = true)]
public class MembershipInitializerAttribute : ActionFilterAttribute
{
private const string CONNECTIONSTRING_NAME = "eShopConnectionString";
private const string DATABASE_TABLE_NAME = "Users";
private const string DATABASE_TABLE_IDENTIFIER_COLUMN = "UserId";
private const string DATABASE_TABLE_USER_NAME_COLUMN = "UserName";
private const bool AUTO_CREATE_TABLES = true;
public override void OnActionExecuting(HttpActionContext actionContext)
{
if (!WebSecurity.Initialized)
{
WebSecurity.InitializeDatabaseConnection(CONNECTIONSTRING_NAME, DATABASE_TABLE_NAME, DATABASE_TABLE_IDENTIFIER_COLUMN, DATABASE_TABLE_USER_NAME_COLUMN, AUTO_CREATE_TABLES);
}
}
}
ユーザー名とパスワードを入力した後、ログイン メソッド get が実行されます。ログイン ボタンを押した後、ログイン メソッドを呼び出すログイン アクション get が実行され、魔女は次の例外をスローします。
{"タイプ 'WebMatrix.WebData.SimpleMembershipProvider' を読み込めませんでした。(F:\Programare\Projects IDE\Visual Studio\2012\e-shop\Backend\WebApi\e-shop.WebApi\web.config 行 73)"}
私が調査を行った後、多くの人が WebMatrix.WebData Copy Local プロパティを true に設定することを提案しました。
それを行った後、資格情報を挿入できる画面が表示されなくなったため、アプリケーションの起動時に何か問題が発生したようです。すぐに次のメッセージが表示された画面が表示されます。
説明: この要求を処理するために必要な構成ファイルの処理中にエラーが発生しました。以下の特定のエラーの詳細を確認し、構成ファイルを適切に変更してください。
パーサー エラー メッセージ: このメソッドは、アプリケーションの開始前の初期化段階では呼び出すことができません。
私は何を間違っていますか?どうすれば修正できますか?
編集
私はこのStackTraceも取得しています: