WebPages / WebMatrix-ページにPagestartを適用しないにはどうすればよいですか?
-
28-10-2019 - |
質問
私はこれらのページを持っています:
- _pagestart.cshtml
- index.cshtml
login.cshtml
.
.
.
n。 otherpage.cshtml
基本的に、「Login.cshtml」という例外を除き、ログインしていないときにユーザーがすべてのページにアクセスするのを制限したいと思います。
私の「_pagestart.cshtml」では、ユーザーがログインしていない場合、ページは「login.cshtml」にリダイレクトされます。 「login.cshtml」が要求されているため、「_pagestar.cshtml」が実行され、ユーザーがログインしていないことを検出します。その結果、無限のリダイレクトが作成されます。
今の質問は次のとおりです。
- 「_pagestart.cshtml」はリダイレクトを置くのに最適な場所ですか?
- 質問の答えが「はい」の場合、特定のページにpagestartを適用しないにはどうすればよいですか?
- 質問の答えがノーの場合、どこにいますか?ヘルパーを作成して、すべてのページに配置する必要がありますか?
解決
別のフォルダーの内部に保護するページを配置し、「メンバー」のようなものにタイトルを付けます。このフォルダーで、_pagestart.cshtmlを次のコードで配置します。
@{
WebSecurity.RequireAuthenticatedUser();
}
スターターサイトに示されている標準のディレクトリ構造を使用している場合、login.cshtmlはアカウントディレクトリにある必要があり、WebSecurityヘルパーはユーザーをlogin.cshtmlページに自動的にリダイレクトします。メンバーシップ。
ジェロッド
所属していません StackOverflow