public void DeleteUser(WikiUser u) { u.ThrowIfArgumentNull(); users.Remove(Query.EQ("_id", u.ID)); }
public void UpdateUser(WikiUser u) { u.ThrowIfArgumentNull(); u.UserName.ThrowIfArgumentNull(); u.LastName.ThrowIfArgumentNull(); u.FirstName.ThrowIfArgumentNull(); u.Identifier.ThrowIfArgumentNull(); var user = users.FindOneById(u.ID); if (user != null) { user.LastName = u.LastName; user.FirstName = u.FirstName; user.Identifier = u.Identifier; if (users.FindOne(Query.EQ("UserName", u.UserName)) == null) user.UserName = u.UserName; var update = Update.Replace<WikiUser>(user); users.Update(Query.EQ("_id", user.ID), update); } }
public void AddUser(WikiUser u) { u.ThrowIfArgumentNull(); u.UserName.ThrowIfArgumentNull(); u.LastName.ThrowIfArgumentNull(); u.FirstName.ThrowIfArgumentNull(); u.Identifier.ThrowIfArgumentNull(); if (users.FindOne(Query.EQ("UserName", u.UserName)) != null) throw new Exception(string.Format("A user with the username ({0}) already exists.", u.UserName)); if (u.ID == ObjectId.Empty) u.ID = ObjectId.GenerateNewId(); users.Insert(u); users.EnsureIndex("Identifier", "UserName"); }