public User Create(NewUserRequest user) { return new User() { Domain = new Domain() { Name = user.Domain }, Login = user.Login, Name = string.Format("{0} {1} {2} ({3})", user.Surname, user.GivenName, user.Middlename, user.Login), DisplayName = string.Format("{0} {1} {2}", user.Surname, user.GivenName, user.Middlename), GivenName = user.GivenName, Surname = user.Surname, Info = user.Info //MiddleName = user.Middlename, //Type = new ObjectType() { Name = user.Type }, //MailEnabled = user.Mail != 1 ? true : false }; }
public async Task<IHttpActionResult> CreateUser(NewUserRequest userModel) { if (!ModelState.IsValid) { return BadRequest(ModelState); } //Response _workflow = new Response(); var _workflow = new CreateUserWorkflow(UserFactory.Create(userModel)); try { //_workflow = await wf.User.Create(UserFactory.Create(userModel), null, userModel.Type); _workflow.Data.Add("template", userModel.Type); await _workflow.Start(); if (_workflow.Succeed) { //var _user = _workflow.Object as User; //return CreatedAtRoute("GetUserById", new { id = _user.Id }, UserFactory.Create(_user, _workflow.State["Password"])); var _user = _workflow.Result as User; //return CreatedAtRoute("GetUserById", new { id = _user.Id }, UserFactory.Create(_user, _workflow.Data["password"])); return CreatedAtRoute("GetUserById", new { id = _user.Id }, UserFactory.Create(_workflow)); } else { return GetErrorResult(_workflow); } } catch(Exception ex) { _workflow.Errors.Add(ex.Message); return GetErrorResult(_workflow); } }