public UserBriefModel CreateUser(CreateUserCommand command) { EnsureIsValid(command); try { var user = command.ToEntity<CreateUserCommand, User>(); _deps.Users.Create(user); if (!user.IsAdmin) { var paymentProfile = _deps.UserPaymentProfileFactory.Create(user, command.Address, command.FullName); _deps.PaymentProfiles.Create(paymentProfile); } Commit(); return user.ToModel<User, UserBriefModel>(); } catch (Exception ex) { throw new ServiceException("Can't create user.", ex); } }
public IHttpActionResult Create(CreateUserCommand command) { var user = _userService.CreateUser(command); return Created(Url.Route("GetUser", new {id = user.UserId}), user); }