// Create
        public CreateNewUserResponse CreateNewUser(CreateNewUserRequest request)
        {
            var response = new CreateNewUserResponse();
            try
            {
                Guard.ArgNotNull(_unitOfWork.UserRepository, "UserRepository");

                User orDefault =
                    _unitOfWork.UserRepository.Get(
                        d => d.LoginName == request.LoginName || d.FormsAuthId == request.FormsAuthId).FirstOrDefault();
                if (orDefault != null)
                {
                    int existingId =
                        orDefault.Id;
                    if (existingId > 0)
                        throw new DuplicateNameException("A user with the specified LoginName already exists", null);
                }

                var user = new User
                               {
                                   FormsAuthId = request.FormsAuthId,
                                   LoginName = request.LoginName,
                                   Email = request.Email,
                                   AvatarImage = request.AvatarImage
                               };

                _unitOfWork.UserRepository.Insert(user);
                _unitOfWork.Save();

                User firstOrDefault =
                    _unitOfWork.UserRepository.Get(d => d.LoginName == request.LoginName).FirstOrDefault();
                if (firstOrDefault != null)
                {
                    int newId = firstOrDefault.Id;

                    if (newId > 0)
                    {
                        response.Success = true;
                        response.Id = newId;
                        response.FormsAuthId = request.FormsAuthId;
                        response.LoginName = request.LoginName;
                        response.Email = request.Email;
                        Logger.LogInfo("Successfully created User Id: " + newId.ToString(), LogType.General);
                    }
                }
            }
            catch (Exception ex)
            {
                response.Success = false;
                response.FailureInformation = ex.Message;
                Logger.LogError("CreateNewUser Method Failed", ex);
            }

            return response;
        }
 public bool UpdateUserDetails(User user)
 {
     UpdateUserResponse result = _dataService.UpdateUser(new UpdateUserRequest
                                                             {
                                                                 Id = user.Id,
                                                                 FormsAuthId = user.FormsAuthId,
                                                                 Email = user.Email,
                                                                 LoginName = user.LoginName,
                                                                 AvatarImage = user.AvatarImage,
                                                             });
     return result.Success;
 }
        public User GetUserDetails(int userId, Guid userGuid)
        {
            User user = null;

            GetUserByIdResponse response =
                _dataService.GetUserById(new GetUserByIdRequest {Id = userId, FormsAuthId = userGuid});
            if (response.Id > 0)
                user = new User
                           {
                               Id = response.Id,
                               FormsAuthId = response.FormsAuthId,
                               Email = response.Email,
                               LoginName = response.LoginName,
                               AvatarImage = response.AvatarImage
                           };
            return user;
        }
 /// <summary>
 /// Deprecated Method for adding a new object to the Users EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
 /// </summary>
 public void AddToUsers(User user)
 {
     base.AddObject("Users", user);
 }
 /// <summary>
 /// Create a new User object.
 /// </summary>
 /// <param name="id">Initial value of the Id property.</param>
 /// <param name="formsAuthId">Initial value of the FormsAuthId property.</param>
 /// <param name="loginName">Initial value of the LoginName property.</param>
 /// <param name="email">Initial value of the Email property.</param>
 public static User CreateUser(global::System.Int32 id, global::System.Guid formsAuthId, global::System.String loginName, global::System.String email)
 {
     User user = new User();
     user.Id = id;
     user.FormsAuthId = formsAuthId;
     user.LoginName = loginName;
     user.Email = email;
     return user;
 }
        public bool UpdateUserDetails(UserDTO userDto)
        {
            var userResult = new User
                                 {
                                     Id = userDto.Id,
                                     FormsAuthId = userDto.FormsAuthId,
                                     LoginName = userDto.LoginName,
                                     AvatarImage = userDto.AvatarImage,
                                     Email = userDto.Email
                                 };

            return UserOperationsEngine.UpdateUserDetails(userResult);
        }