ASP.NET メンバーシップ プロバイダーを使用して現在のユーザーの ID を取得するにはどうすればよいですか? 私のアプリケーションは Database First アプローチを使用する MVC 3 であるため、独自のデータベースを作成し、メンバーシップ プロバイダーとロール プロバイダーは私のテーブル (カスタム メンバーシップとロール プロバイダー) を使用しています。
私のページ (フィードバック) の 1 つで、ユーザーは私の Web サイトに関するフィードバックを送信できます。ユーザーが接続している場合は、挿入時にテーブルに UserID を含めたいと考えています。
しかし、ASP.NET メンバーシップは IIdentity であるため、アクセスできるのは名前だけです。名前を使用して 2 つのテーブル間にリンクを作成したくありません。ID が必要です。
では、この非常に単純なタスクのためにアプリケーションで何をしますか? つまり、接続ユーザーが値を挿入する必要があるほぼすべてのページで、ユーザー テーブルへの正しい外部キーを作成するためにユーザーの ID が必要ですよね? ちなみに、私はこの MVC フレームワークに非常に慣れていません。それ以前は ASP.NET aspx を使用していました。ユーザー情報については、必要に応じて現在の ID、名前、その他のフィールドを提供するセッションを使用していました。Session オブジェクトを使った実装は共有ホスティングで苦労したので、本当のメンバーシップを使いたいと思っています。
ありがとう!
編集
必要な ID は整数でなければなりません (実際、User テーブルにある UserID フィールドが必要です)。