Aspnet标识:使用泛型类管理用户

时间:2013-11-25 11:50:36

标签: c# generics asp.net-identity

我已经定义了3个继承自IdentityUser的类,因为我想为每种类型的用户存储不同的属性,但在一个类中有共同的属性。 我的问题是我如何拥有一个加载正确成员资格类型的通用usermanager类 一个简单的例子

public class MembershipUser : IdentityUser
{
    public DateTime? Birthdate { get; set; }
    .
    .
    .
}

public class Membership1 : MembershipUser
{
    public int? Level_ID { get; set; }
    .
    .
    .
}

public class Membership2 : MembershipUser
{
    public int? Count { get; set; }
    .
    .
    .
}

我想拥有一个通用的usermanager类 像这样

public class UserManager<T> : UserManager<T>  where T: IUser
{
public UserManager()
                : base(new UserStore<T>(new MembershipManagementContext()))
{
}

但是我收到错误“错误1'对象'不包含带有1个参数的构造函数”

1 个答案:

答案 0 :(得分:0)

为了使用泛型UserManager * *,您要使用的类必须具有无参数构造函数。例如,MembershipUser必须包含:

public MembershipUser()
{
  // Initialization
}