WebPages / WebMatrix-ページにPagestartを適用しないにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/8859963

  •  28-10-2019
  •  | 
  •  

質問

私はこれらのページを持っています:

  1. _pagestart.cshtml
  2. index.cshtml
  3. login.cshtml

    .

    .

    .

n。 otherpage.cshtml

基本的に、「Login.cshtml」という例外を除き、ログインしていないときにユーザーがすべてのページにアクセスするのを制限したいと思います。

私の「_pagestart.cshtml」では、ユーザーがログインしていない場合、ページは「login.cshtml」にリダイレクトされます。 「login.cshtml」が要求されているため、「_pagestar.cshtml」が実行され、ユーザーがログインしていないことを検出します。その結果、無限のリダイレクトが作成されます。

今の質問は次のとおりです。

  1. 「_pagestart.cshtml」はリダイレクトを置くのに最適な場所ですか?
  2. 質問の答えが「はい」の場合、特定のページにpagestartを適用しないにはどうすればよいですか?
  3. 質問の答えがノーの場合、どこにいますか?ヘルパーを作成して、すべてのページに配置する必要がありますか?
役に立ちましたか?

解決

別のフォルダーの内部に保護するページを配置し、「メンバー」のようなものにタイトルを付けます。このフォルダーで、_pagestart.cshtmlを次のコードで配置します。

@{ 
    WebSecurity.RequireAuthenticatedUser();
}

スターターサイトに示されている標準のディレクトリ構造を使用している場合、login.cshtmlはアカウントディレクトリにある必要があり、WebSecurityヘルパーはユーザーをlogin.cshtmlページに自動的にリダイレクトします。メンバーシップ。

ジェロッド

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top