Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk mendapatkan semula ApplicationUser yang sedang dilog masuk dalam ASP.NET MVC 5?

Bagaimana untuk mendapatkan semula ApplicationUser yang sedang dilog masuk dalam ASP.NET MVC 5?

Susan Sarandon
Susan Sarandonasal
2024-12-27 21:23:14238semak imbas

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

ASP.NET MVC 5: Mendapatkan semula ApplicationUser Semasa

Mengakses ApplicationUser yang sedang dilog masuk dalam rangka kerja Identiti ASP.NET MVC 5 memerlukan pendekatan tertentu. Tidak seperti mekanisme Keahlian lama, Identity menyediakan antara muka yang konsisten untuk berinteraksi dengan data pengguna.

Mendapatkan semula Objek ApplicationUser

Untuk mendapatkan objek penuh ApplicationUser semasa, jangan tanya pangkalan data secara langsung. Sebaliknya, gunakan API yang disediakan:

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

Untuk tindakan async, gunakan:

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

Pastikan anda memasukkan pernyataan menggunakan berikut:

using Microsoft.AspNet.Identity;

Mengakses ID Pengguna

Di luar pengawal, ID pengguna boleh diambil daripada:

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

Senario: Mengakses ApplicationDbContext dan UserManager

Jika anda tiada dalam pengawal Akaun, tambah sifat ini dan kod pembina pada pengawal anda:

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));
}

Pangkalan Data Azure Pertimbangan

Apabila menggunakan Rangka Kerja Identiti dengan sambungan pangkalan data Azure jauh, anda mungkin menghadapi mesej "ralat: 19 - Sambungan fizikal tidak boleh digunakan". Untuk menyelesaikan masalah ini, laksanakan SqlAzureExecutionStrategy tersuai dalam projek anda.

Atas ialah kandungan terperinci Bagaimana untuk mendapatkan semula ApplicationUser yang sedang dilog masuk dalam ASP.NET MVC 5?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn