私はFormsAuthenticationを使用しますが、カスタムユーザーテーブルに対して検証するカスタムMemberShipProviderを追加しました。ユーザーID(MVC)を維持するためのベストプラクティス
「ユーザーデータ」を含むすべての表にはidUser列があるため、ユーザーにデータを提示するためにユーザーIDを維持する必要があります。
以前はセッション変数(ASP.NET Webform)を使用していましたが、WebアプリケーションをMVCに書き直しているので、一般的にこれについての最良のアプローチと考えられています。
セッション変数はまだidUserを保持するのに最適な場所ですか、またはユーザー名に加えてパブリックuserIdも保持するカスタム "Current.User.Identity"を追加する必要がありますか?
完全に異なるアプローチを選択する必要がありますか?
ありがとう!私も同様のアプローチを考えていました。上記の@Mark.Sと同意しますが、最も簡単なのはセッションオブジェクトを使用することです。 – Kman
セッションを避けた理由の詳細を追加しました –
セッションは必ずしも悪くはなく、必然かもしれません。多くの場合、ユーザーはセッションを無効にして、Cookieに頼りすぎてすべてのHTTPリクエストのサイズを増やし始めません。同時リクエストを処理するもう1つの方法は、MVC4ベータ版ではかなり簡単な非同期コントローラを使用することです。これは以前のバージョンの小さな作業で行うことができます。 – Mark