ホームページ >バックエンド開発 >C++ >ASP.NET MVC 5で現在ログインしているApplicationUserを取得する方法は?

ASP.NET MVC 5で現在ログインしているApplicationUserを取得する方法は?

Susan Sarandon
Susan Sarandonオリジナル
2024-12-27 21:23:14294ブラウズ

How to Retrieve the Currently Logged-in ApplicationUser in ASP.NET MVC 5?

ASP.NET MVC 5: 現在の ApplicationUser の取得

ASP.NET MVC 5 の ID フレームワークで現在ログインしている ApplicationUser にアクセスするには、以下が必要です具体的なアプローチ。昔のメンバーシップ メカニズムとは異なり、Identity はユーザー データを操作するための一貫したインターフェイスを提供します。

ApplicationUser オブジェクトの取得

現在の ApplicationUser の完全なオブジェクトを取得するには、データベースに直接クエリを実行しないでください。代わりに、提供されている API を使用します:

var user = UserManager.FindById(User.Identity.GetUserId());

非同期アクションの場合は、

var user = await UserManager.FindByIdAsync(User.Identity.GetUserId());

次の using ステートメントが含まれていることを確認してください:

using Microsoft.AspNet.Identity;

ユーザー ID へのアクセス

コントローラーの外部では、ユーザー ID

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

シナリオ: ApplicationDbContext および UserManager へのアクセス

アカウント コントローラーを使用していない場合は、これらのプロパティとコンストラクター コードをコントローラー:

protected ApplicationDbContext ApplicationDbContext { get; set; }
protected UserManager<ApplicationUser> UserManager { get; set; }

public YourController()
{
    this.ApplicationDbContext = new ApplicationDbContext();
    this.UserManager = new UserManager<ApplicationUser>(new UserStore<ApplicationUser>(this.ApplicationDbContext));
}

Azure データベース考慮事項

リモート Azure データベース接続で Identity Framework を使用すると、「エラー: 19 - 物理接続は使用できません」というメッセージが表示される場合があります。これを解決するには、プロジェクトにカスタム SqlAzureExecutionStrategy を実装します。

以上がASP.NET MVC 5で現在ログインしているApplicationUserを取得する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。