internal void AddUserAndRole()
        {
            // Access the application context and create result variables.
            var            context = new SummitCommunityDbContext();
            IdentityResult IdRoleResult;
            IdentityResult IdUserResult;

            // Create a RoleStore object by using the ApplicationDbContext object.
            // The RoleStore is only allowed to contain IdentityRole objects.
            var roleStore = new RoleStore <IdentityRole>(context);

            // Create a RoleManager object that is only allowed to contain IdentityRole objects.
            // When creating the RoleManager object, you pass in (as a parameter) a new RoleStore object.
            var roleMgr = new RoleManager <IdentityRole>(roleStore);

            // Then, you create the "canEdit" role if it doesn't already exist.
            if (!roleMgr.RoleExists("admin"))
            {
                IdRoleResult = roleMgr.Create(new IdentityRole {
                    Name = "admin"
                });
            }

            // Create a UserManager object based on the UserStore object and the ApplicationDbContext
            // object. Note that you can create new objects and use them as parameters in
            // a single line of code, rather than using multiple lines of code, as you did
            // for the RoleManager object.
            var userMgr = new UserManager <User>(new UserStore <User>(context));
            var user    = new User
            {
                FirstName = "John",
                LastName  = "Doe",
                UserName  = "******",
                Email     = "*****@*****.**"
            };

            IdUserResult = userMgr.Create(user, "123456");

            // If the new "canEdit" user was successfully created,
            // add the "canEdit" user to the "canEdit" role.
            if (!userMgr.IsInRole(userMgr.FindByName("admin").Id, "admin"))
            {
                IdUserResult = userMgr.AddToRole(userMgr.FindByName("admin").Id, "admin");
            }
        }
        internal void AddUserAndRole()
        {
            // Access the application context and create result variables.
            var context = new SummitCommunityDbContext();
            IdentityResult IdRoleResult;
            IdentityResult IdUserResult;

            // Create a RoleStore object by using the ApplicationDbContext object. 
            // The RoleStore is only allowed to contain IdentityRole objects.
            var roleStore = new RoleStore<IdentityRole>(context);

            // Create a RoleManager object that is only allowed to contain IdentityRole objects.
            // When creating the RoleManager object, you pass in (as a parameter) a new RoleStore object. 
            var roleMgr = new RoleManager<IdentityRole>(roleStore);

            // Then, you create the "canEdit" role if it doesn't already exist.
            if (!roleMgr.RoleExists("admin"))
            {
                IdRoleResult = roleMgr.Create(new IdentityRole { Name = "admin" });
            }

            // Create a UserManager object based on the UserStore object and the ApplicationDbContext  
            // object. Note that you can create new objects and use them as parameters in
            // a single line of code, rather than using multiple lines of code, as you did
            // for the RoleManager object.
            var userMgr = new UserManager<User>(new UserStore<User>(context));
            var user = new User
            {
                FirstName = "John",
                LastName = "Doe",
                UserName = "******",
                Email = "*****@*****.**"
            };

            IdUserResult = userMgr.Create(user, "123456");

            // If the new "canEdit" user was successfully created, 
            // add the "canEdit" user to the "canEdit" role. 
            if (!userMgr.IsInRole(userMgr.FindByName("admin").Id, "admin"))
            {
                IdUserResult = userMgr.AddToRole(userMgr.FindByName("admin").Id, "admin");
            }
        }