0

私はこれに似た実装を持っています:強く型付けされたASP.NETMVCセッションを行うためのより良い方法

頻繁に必要とされるユーザーデータにすばやくアクセスするために...しかし、2つの質問があります:

1)ユーザーがログインしているのに、セッションが無効になったりリセットされたりすることはありますか?ユーザーがサインインしている限り、そのセッションは有効だといつも思っていました...

2)ユーザーがログインしたときにデータを入力したいのですが、ログイン時にそのデータにアクセスする方法がわかりません。AccountControllerにはLogOnメソッドがありますが、FormsService.SignInメソッドはありますが、Membership.GetUser()はページがリダイレクトされるまでnullを返すため、実際にユーザーにサインインしている場所がわかりません...

私はこれを間違っていると推測しています。セッションを取得するためのジェネリックメソッドを作成するのではなく、個々のメソッドをセッション値にマップし、ユーザーデータから手動で再入力する必要があります。ヌル..

どう思いますか?

4

1 に答える 1

1
  1. セッションと認証には違いがあります。ユーザーがサインインしていなくても、アプリケーション全体でセッションを利用できます。
  2. デフォルトのASP.NETMVC2.0プロジェクトテンプレートでは、の呼び出しの直後にセッションデータを入力できますFormsService.SignIn。これは、ユーザー資格情報が検証され、認証Cookieが応答に書き込まれる場所です。必要に応じて、提供されたユーザー名を使用して、データベースからユーザー情報を取得できます。
于 2010-07-26T06:11:07.220 に答える