1

私はAsp.Net MVC-4自分のアプリケーションで使用しています。たとえばPersonなどのコントローラーを作成しました。このコントローラーには、たとえばGetNameGetAgeGetDateOfBirthなどの 3 つのアクションがあります。今私が欲しいのは、ログインしていないユーザーがこれらのアクション ビューにアクセスできないようにチェックを入れることです。

このために、_start.cshtmlビューを使用しようとしています。これは、ユーザーがPersonフォルダーViews/Person/内から任意のビューにアクセスするときはいつでも、他のビューよりも先にビューを実行する必要があることを期待しています。そして *_start.cshtml* に、現在のユーザーがログインしているかどうかを確認するコードを配置しました。しかし、_star.cshtml は実行されていません。_start.cshtml

誰かが私が間違っていることを教えてもらえますか?

4

1 に答える 1

5

今私が欲しいのは、ログインしていないユーザーがこれらのアクションビューにアクセスできないようにチェックを入れることです

これは絶対にビューで行うべきことではありませんが、[Authorize]属性でそれらを装飾することにより、コントローラー アクションで行う必要があります。例えば:

[Authorize]
public ActionResult SomeAction()
{
    ...
}

また、1 つまたは複数のロールを指定することもできます。

[Authorize(Roles = "Admin")]
public ActionResult SomeAction()
{
    ...
}

この属性でコントローラーを装飾することもできます。これは、その中のすべてのアクションが承認を必要とすることを意味します。

于 2013-04-18T11:31:39.100 に答える