ASP.NetCore链接身份验证用户到模型
创始人
2024-09-17 23:00:28
0

在 ASP.Net Core 中,我们可以使用身份验证系统将用户与模型关联起来。以下是一些示例代码来演示如何将用户与模型关联。

首先,在你的模型类中,添加一个名为“ApplicationUser”的导航属性:

public class Book
{
    public int Id { get; set; }
    public string Title { get; set; }
    public string Author { get; set; }
    public string Genre { get; set; }
    public int PublisherYear { get; set; }
    
    public string ApplicationUserId { get; set; }
    public ApplicationUser ApplicationUser { get; set; }
}

接下来,在你的控制器类中,注入 UserManager 和 SignInManager 服务,并在 Action 中调用 SignInManager 的方法,将当前用户与模型关联起来:

public class BookController : Controller
{
    private readonly UserManager _userManager;
    private readonly SignInManager _signInManager;

    public BookController(UserManager userManager, SignInManager signInManager)
    {
        _userManager = userManager;
        _signInManager = signInManager;
    }

    [HttpPost]
    public async Task Create(Book book)
    {
        if (ModelState.IsValid)
        {
            var user = await _userManager.GetUserAsync(User);
            book.ApplicationUser = user;
            _context.Add(book);
            await _context.SaveChangesAsync();
            return RedirectToAction(nameof(Index));
        }
        return View(book);
    }
}

在上面的代码中,我们首先从 UserManager 中获取当前用户,然后将其放置到新创建的书籍模型的 ApplicationUser 导航属性中。接着,我们将书籍保存到数据库中。

最后,在视图中,我们可以将当前用户的信息显示出来:

Created By: @Model.ApplicationUser.UserName

这样,我们就可以轻松地将用户与模型关联起来,并在需要时获取相应的用户信息。

相关内容

热门资讯

wpk微扑克智能辅助!德州nz... wpk微扑克智能辅助!德州nzt软件透明挂,x-poker果然真的有挂(详细辅助挂教程)1、wpk微...
微扑克ai辅助会封号!智星德州... 微扑克ai辅助会封号!智星德州菠萝软件透明挂,德州扑克一般真的有挂(详细代打辅助教程)微扑克ai辅助...
wpk微扑克免费辅助!智星德州... wpk微扑克免费辅助!智星德州菠萝软件透明挂,aapOker其实真的有挂(详细辅助脚本教程);1、用...
aapoker ai!aapo... aapoker ai!aapoKER软件透明挂,x-poker本来真的有挂(详细辅助黑科技教程)1、...
wepower有辅助软件!约局... 您好,wepower有辅助软件这款游戏可以开挂的,确实是有挂的,需要了解加微【757446909】很...
德州nzt软件!扑克王软件透明... 德州nzt软件!扑克王软件透明挂,菠萝德州一贯真的有挂(详细辅助脚本教程)1、德州nzt软件ai机器...
wepoke挂真的假的!轰趴大... wepoke挂真的假的!轰趴大菠萝软件透明挂,aAPOKER的确真的有挂(详细代打辅助教程);1、w...
德州ai辅助代理!wepoke... 德州ai辅助代理!wepoker软件透明挂,德扑平台一贯真的有挂(详细辅助黑科技教程);1、构建自己...
微扑克辅助机器人!fish p... 微扑克辅助机器人!fish poker软件透明挂,红龙扑克的确是有挂的(详细辅助插件教程)亲,关键说...
wpk辅助器是真的!德州nzt... wpk辅助器是真的!德州nzt软件透明挂,智星德州菠萝其实真的有挂(详细ai辅助教程)1、wpk辅助...