1. ホーム
  2. c#

[解決済み] MVC5で現在のユーザーを取得し、Userクラスを使用するにはどうすればよいですか?

2022-04-25 10:08:53

質問

  • で現在ログインしているユーザーのidを取得するにはどうしたらよいでしょうか? MVC 5 ? 私はStackOverflowの提案を試してみましたが、それらはMVC 5用ではないようです。
  • また、MVC 5のベストプラクティスとして、ユーザーへの物品の割り当てについて教えてください。(例えば User を持つべきです。 Items . ユーザーの IdItem ? を拡張することはできますか? User クラスで List<Item> ナビゲーションプロパティ?

MVCテンプレートから"Individual User Accounts"を使っているのですが、どうすればいいですか?

これらを試してみました。

'Membership.GetUser()' が NULL です。

解決方法は?

ASP.NET MVC Controllerでコーディングする場合は、以下のようにします。

using Microsoft.AspNet.Identity;

...

User.Identity.GetUserId();

特筆すべきは User.Identity.IsAuthenticatedUser.Identity.Name を追加しなくても動作します。 using ステートメントを使用します。しかし GetUserId() がないと存在しない。

Controller 以外のクラスの場合は

HttpContext.Current.User.Identity.GetUserId();

MVC 5のデフォルトテンプレートでは、ユーザーIDは文字列として格納されるGUIDです。

ベストプラクティスはまだありませんが、ユーザープロファイルを拡張するための貴重な情報を見つけました。