public object Put(CreateUser request) { CreateUserValidator.ValidateAndThrow(request); using (var session = NHibernateHelper.OpenSession()) { using (var transaction = session.BeginTransaction()) { var user = new UserModel(); user.Created = DateTime.Now.ToTimestamp(); if (request.FirstName.IsSet()) { user.FirstName = request.FirstName; } if (request.LastName.IsSet()) { user.LastName = request.LastName; } if (request.Nickname.IsSet()) { user.Nickname = request.Nickname; } if (request.PhoneNumber.IsSet()) { user.PhoneNumber = request.PhoneNumber; } if (request.Email.IsSet()) { user.Email = request.Email; } if (request.Password.IsSet()) { user.Password = request.Password; } session.SaveOrUpdate(user); transaction.Commit(); return(new UserDto(user)); } } }
public object Delete(DatabaseStatus request) { var user = new UserModel() { LastLoggedIn = DateTime.Now.ToTimestamp() }; try { using (var session = NHibernateHelper.OpenSession()) { using (var transaction = session.BeginTransaction()) { session.SaveOrUpdate(user); transaction.Commit(); } } } catch (Exception ex) { return(new HttpError(HttpStatusCode.InternalServerError, "Creating in the database failed with: " + ex)); } try { using (var session = NHibernateHelper.OpenSession()) { using (var transaction = session.BeginTransaction()) { session.Delete(user); transaction.Commit(); } } return(new HttpError(HttpStatusCode.OK, "Creating in and deleting from the database is functional.")); } catch (Exception ex) { return(new HttpError(HttpStatusCode.InternalServerError, "Deleting from the database failed with: " + ex)); } }