あなたの混乱に役立たないことが実際に何も起こっていないことを説明していないので、他の回答よりもいくらか明確に説明してください。
まずアップ、あなたはすでにやった事の音からのカスタムプロバイダーを実装するので、私はほんの少しのコードスニペットを投げるだろうとここにさらに詳細には触れません。
using System.Web.Security;
public class MyCustomMembershipProvider : MembershipProvider
{
public override bool ValidateUser(string username, string password)
{
if (username.Equals("BenAlabaster") && password.Equals("Elephant"))
return true;
return false;
}
/* Override all the other methods required to extend MembershipProvider */
}
そして、あなたがベースのMembershipProviderを設定する属性を移入することを確認すること、あなたのweb.configファイルで、あなたのプロバイダを設定します。
<membership defaultProvider="MyCustomMembershipProvider">
<providers>
<clear />
<add name="MyCustomMembershipProvider"
type="MyNamespace.MyCustomMembershipProvider"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="false"
requiresUniqueEmail="true"
passwordFormat="Hashed"
maxInvalidPasswordAttempts="10"
minRequiredPasswordLength="6"
minRequiredNonalphanumericCharacters="0"
passwordAttemptWindow="10"
passwordStrengthRegularExpression=""
applicationName="/" />
</providers>
</membership>
次のビット、私はあなたが、実際にタイでのWebアプリケーションへのoverthinkingていると思います。 WebFormsアプリケーションでは、自分で残りの部分をコード化する必要がありますが、MVCフレームワークでは残りの部分を処理する必要があります。アクションメソッドに[Authorize]属性を追加するだけです。フレームワークは、ログインし、ログインページにリダイレクトしない場合は、それは、web.configファイルで構成されているものだとして、ユーザーがログに記録されますので、ログインページは、カスタムプロバイダを見つけるあなたはユーザーオブジェクト参照することにより、あなたのコントローラからログインしているユーザーについての情報にアクセスすることができます。
public class WhateverController : Controller
{
[Authorize]
public ActionResult WhateverAction()
{
ViewData["LoggedInAs"] = string.Format("You are logged in as {0}.", User.Identity.Name);
Return View();
}
}
を
この操作では、ユーザーがログインし、ページに表示されるWhatever/WhateverAction.aspxビューにユーザー情報を表示する必要があります。
さて、それは理にかなっています。私はちょうど2つと2つ一緒に入れていませんでした。私はまだそのWebFormsのフレームの枠組みにこだわっていて、MVCがそれをいつ行うのか、そして自分でそれを処理しなければならないのか分かっていません。 – BobTheBuilder