一对多MVC个人用户帐户

时间:2018-05-02 18:42:13

标签: c# asp.net-mvc

我正在使用asp.net mvc和个人用户帐户模板,我尝试在用户与项目之间建立一对多的关系。

在没有个人用户帐户模板的项目中,我可以简单地执行以下操作:

public class User
{
    public int UserID { get; set; }
    public string Username { get; set; }

    public virtual ICollection<Item> Items { get; set; }

}

并且

  public class Item
{
    public int ItemID { get; set; }
    public string ItemName { get; set; }
    public int UserID { get; set; }

    public virtual User User { get; set; }
}

问题是我无法在个人用户帐户模板中找到用户(ApplicationUser)的完整模型。所以我不知道如何将项目添加到用户并为用户生成控制器(在单个用户模板中)

1 个答案:

答案 0 :(得分:0)

从Models文件夹中的模板,在IdentityModels中:

public class ApplicationUser : IdentityUser
{
    public async Task<ClaimsIdentity> GenerateUserIdentityAsync(UserManager<ApplicationUser> manager)
    {
        // Note the authenticationType must match the one defined in CookieAuthenticationOptions.AuthenticationType
        var userIdentity = await manager.CreateIdentityAsync(this, DefaultAuthenticationTypes.ApplicationCookie);
        // Add custom user claims here
        return userIdentity;
    }

    // Add here ..
    public string DisplayName { get; set; }
    public virtual ICollection<Item> Items { get; set; }
}

以这种方式在ApplicationUser模型中使用Identity tie。如果ApplicationUser的所有其他引用也已更新,您也可以在此处将名称User更改为ApplicationUser