2017-12-27 34 views
-4

ASP.NET MVC 5でWebアプリケーションを作成しました.cshtmlにランディングページがあります。ユーザーがこのページのボタンをクリックすると、ユーザーが既にログインしているかどうかをチェックします(特定のCookieとその有効な値が存在するかどうかをチェックします)。ユーザーが既にログインしている場合は、ランディングページをターゲットページに置き換える必要があります。ユーザーがまだログインしていない場合は、ログイン資格情報を入力するためのポップアップウィンドウが表示されます。彼が正しく入力すると、ログインポップアップウィンドウが閉じて、ランディングページがターゲットページに置き換えられます。まだログインしていないユーザーログインのポップアップウィンドウ

私はMVCの以前の経験を持っていないので、私はこれについていくつかの助けが必要です。ユーザーがリンク先ページのボタンをクリックしたときに、サーバーにリクエストを送信して既にログインしているかどうかを確認し、ユーザーがすでにログインしている場合にのみリンク先ページをターゲットページに置き換える方法また、ログインポップアップウィンドウが表示され、ユーザーが正しい資格情報を入力した場合、ランディングページをターゲットページに置き換える方法は?

単純な例が良いでしょう。

ありがとうございます。

+0

[ASP MVCアクションへの基本認証の追加](https://stackoverflow.com/questions/3680991/adding-basic-authentication-to-asp)の可能な複製-mvc-action) –

答えて

0

私はあなたのニーズに合うように再コーディングする必要がある、より一般的で技術的な例を提供するのではなく、より高いレベルからこれに答えようとします。

モデルにブール値変数が必要です。これをloggedInと呼ぶことができます。これは、ユーザーのログイン状態を表します。クッキーは、彼らが真

  • にLOGGEDIN、その後割り当てるにログインしていることを読み取るとクッキーが、彼らはその後、ログインしていないことを読み取る場合

    • あなたが

    • 最初のクッキーをチェックするためのコントローラをしたいですloggedInをfalseに設定する

    モデルをビューに渡すと、RAZORを使用してloggedInブール値を読み取ることができます。それが真であれば、内容を表示してください。それが偽であれば、あなたのログインの部分的な表示を表示します。

  • +0

    あなたが言及したコントローラは、ランディングページ(ランディングページが表示される前に呼び出されたもの)用ですか? – user3573403

    +0

    はい、ログインを介した認証が必要なページごとに、コントローラのアクションを設定する必要があります。これは、5ページある場合、5つのコントローラアクションを設定することを意味します。クッキーを読み取ってブール値を返すロジックをカプセル化することができるので、コントローラアクション内で呼び出すことができます。 –

    +0

    あなたのソリューションはあまりにも曖昧で、私の質問には答えません。私はコントローラが何であるか、私の場合に何をすべきかを知っています。どのようにするかわからないのは、リンク先ページのボタンをクリックしたときにコントローラを起動する方法です。おそらくここではAJAXコールが必要だと思っています。 – user3573403

    関連する問題