Example #1
0
        public bool ImportAspNetUserXML()
        {
            DTOs.AspNetUserDataDTO xmlcontents = new DTOs.AspNetUserDataDTO();
            XmlSerializer          serializer  = new XmlSerializer(typeof(DTOs.AspNetUserDataDTO));

            foreach (string pfile in Request.Files)
            {
                HttpPostedFileBase file = Request.Files[pfile];
                // string fileName = file.FileName;
                // fileName = Server.MapPath("~/uploads/" + fileName);
                // file.InputStream .SaveAs(fileName);
                using (XmlReader reader = XmlReader.Create(file.InputStream))
                {
                    xmlcontents = (DTOs.AspNetUserDataDTO)serializer.Deserialize(reader);
                }
            }

            _userRepository.ImportAspNetUserXML(xmlcontents);


            return(true);
        }
Example #2
0
        public string GetAspNetUsersXML()
        {
            var appDbContext = new Models.ApplicationDbContext();

            DTOs.AspNetUserDataDTO theTransferObject = new DTOs.AspNetUserDataDTO();
            theTransferObject.Users      = new List <DTOs.AspNetUsersDTO>();
            theTransferObject.Roles      = new List <DTOs.AspNetRolesDTO>();
            theTransferObject.UserLogins = new List <DTOs.AspNetUserLoginsDTO>();
            theTransferObject.UserRoles  = new List <DTOs.AspNetUserRolesDTO>();

            var userManager = new UserManager <Models.ApplicationUser>(new UserStore <Models.ApplicationUser>(appDbContext));

            foreach (var item in appDbContext.Users.ToList())
            {
                theTransferObject.Users.Add(new DTOs.AspNetUsersDTO()
                {
                    Id                   = item.Id,
                    Email                = item.Email,
                    EmailConfirmed       = item.EmailConfirmed,
                    PasswordHash         = item.PasswordHash,
                    SecurityStamp        = item.SecurityStamp,
                    PhoneNumber          = item.PhoneNumber,
                    PhoneNumberConfirmed = item.PhoneNumberConfirmed,
                    TwoFactorEnabled     = item.TwoFactorEnabled,
                    LockoutEndDateUtc    = item.LockoutEndDateUtc.HasValue ? item.LockoutEndDateUtc.Value : (DateTime?)null,
                    LockoutEnabled       = item.LockoutEnabled,
                    AcccessFailedCount   = item.AccessFailedCount,
                    UserName             = item.UserName
                });

                foreach (var login in item.Logins.ToList())
                {
                    theTransferObject.UserLogins.Add(new DTOs.AspNetUserLoginsDTO()
                    {
                        UserId        = login.UserId,
                        LoginProvider = login.LoginProvider,
                        ProviderKey   = login.ProviderKey
                    });
                }
            }

            var roleManager = new RoleManager <IdentityRole>(new RoleStore <IdentityRole>(appDbContext));

            foreach (var item in roleManager.Roles.ToList())
            {
                theTransferObject.Roles.Add(new DTOs.AspNetRolesDTO()
                {
                    Id   = item.Id,
                    Name = item.Name
                });

                foreach (var ruser in item.Users)
                {
                    theTransferObject.UserRoles.Add(new DTOs.AspNetUserRolesDTO()
                    {
                        UserId = ruser.UserId,
                        RoleId = ruser.RoleId
                    });
                }
            }

            XmlSerializer serializer = new XmlSerializer(typeof(DTOs.AspNetUserDataDTO));
            var           xml        = "";

            using (var sww = new StringWriter())
            {
                using (XmlWriter writer = XmlWriter.Create(sww))
                {
                    writer.WriteProcessingInstruction("xml", "version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"");
                    serializer.Serialize(writer, theTransferObject);
                    xml = sww.ToString();
                }
            }
            return(xml);
        }
Example #3
0
        public bool ImportAspNetUserXML(DTOs.AspNetUserDataDTO content)
        {
            var appDbContext = new Models.ApplicationDbContext();
            var userManager  = new UserManager <Models.ApplicationUser>(new UserStore <Models.ApplicationUser>(appDbContext));
            var roleManager  = new RoleManager <IdentityRole>(new RoleStore <IdentityRole>(appDbContext));

            foreach (var role in content.Roles)
            {
                if (!roleManager.RoleExists(role.Name))
                {
                    roleManager.Create(new IdentityRole()
                    {
                        Name = role.Name
                    });
                }
            }

            foreach (var user in content.Users)
            {
                var existingUser = userManager.FindByEmail(user.Email);
                if (existingUser == null)
                {
                    var createRes = userManager.Create(new Models.ApplicationUser()
                    {
                        Id                   = user.Id,
                        Email                = user.Email,
                        EmailConfirmed       = user.EmailConfirmed,
                        LockoutEnabled       = user.LockoutEnabled,
                        AccessFailedCount    = user.AcccessFailedCount,
                        LockoutEndDateUtc    = user.LockoutEndDateUtc.HasValue ? user.LockoutEndDateUtc : null,
                        PasswordHash         = user.PasswordHash,
                        PhoneNumber          = user.PhoneNumber,
                        PhoneNumberConfirmed = user.PhoneNumberConfirmed,
                        TwoFactorEnabled     = user.TwoFactorEnabled,
                        UserName             = user.UserName
                    });

                    if (createRes.Succeeded)
                    {
                    }
                }
                else
                {
                    existingUser.Email                = user.Email;
                    existingUser.EmailConfirmed       = user.EmailConfirmed;
                    existingUser.LockoutEnabled       = user.LockoutEnabled;
                    existingUser.AccessFailedCount    = user.AcccessFailedCount;
                    existingUser.LockoutEnabled       = user.LockoutEnabled;
                    existingUser.LockoutEndDateUtc    = user.LockoutEndDateUtc.HasValue ? user.LockoutEndDateUtc : null;
                    existingUser.PasswordHash         = user.PasswordHash;
                    existingUser.PhoneNumber          = user.PhoneNumber;
                    existingUser.PhoneNumberConfirmed = user.PhoneNumberConfirmed;
                    existingUser.TwoFactorEnabled     = user.TwoFactorEnabled;
                    existingUser.UserName             = user.UserName;
                }
            }

            List <IdentityUserLogin> userlogins = new List <IdentityUserLogin>();

            foreach (var login in content.UserLogins)
            {
                userlogins.Add(new IdentityUserLogin()
                {
                    LoginProvider = login.LoginProvider,
                    ProviderKey   = login.ProviderKey,
                    UserId        = login.UserId
                });
            }

            return(false);
        }