ASP .NET MVC 4:WebSecurity.CreateUserAndAccount如何设置UserId

时间:2012-10-14 20:39:41

标签: .net asp.net-mvc entity-framework

我想在Configuration.cs中移动数据库表和数据(用户,角色e.t.c.中的用户)的初始化,如本文所述:http://blog.longle.net/2012/09/25/seeding-users-and-roles-with-mvc4-simplemembershipprovider-simpleroleprovider-ef5-codefirst-and-custom-user-properties/

但我有一个问题:是否可以设置添加用户的UserId?我的意思是,我可以添加5个用户,并且,我认为他们应该得到1-2-3-4-5 Ids,但我可以控制它并设置他们的Ids手册吗?

现在初始化看起来像:

        if (!WebSecurity.UserExists("elena"))
            WebSecurity.CreateUserAndAccount("elena", "password");

1 个答案:

答案 0 :(得分:10)

是的,您可以通过传入要设置的属性来执行此操作。例如:

WebSecurity.CreateUserAndAccount("elena", "password", new { UserId = 1 });

当然,您需要确保UserId列未设置为标识列,并且您必须更改UsersContext架构以添加它。

[Table("UserProfile")]
public class UserProfile
{
    [Key]
    [DatabaseGenerated(DatabaseGeneratedOption.None)]
    public int UserId { get; set; }
    public string UserName { get; set; }
}