示例#1
0
 private void EnsureSubwebbitDetails(NewSubwebbitViewModel subwebbit)
 {
     if (!new SubwebbitValidator().IsValid(subwebbit))
     {
         throw new InvalidModelDetailsException();
     }
 }
示例#2
0
        public async Task <ObjectId> Create(NewSubwebbitViewModel subwebbit)
        {
            EnsureSubwebbitDetails(subwebbit);
            await EnsureNameNotTaken(subwebbit.Name);

            var newSubwebbit = new Subwebbit(subwebbit.OwnerId, subwebbit.Name);
            await Collection.InsertOneAsync(newSubwebbit);

            return(newSubwebbit.Id);
        }
示例#3
0
 public bool IsValid(NewSubwebbitViewModel subwebbit)
 {
     return(!string.IsNullOrWhiteSpace(subwebbit.OwnerId) &&
            new StringValidator().IsLengthBetween(subwebbit.Name, 1, 30));
 }
示例#4
0
        public async Task <IHttpActionResult> Create(NewSubwebbitViewModel subwebbit)
        {
            var id = await Logic.Create(subwebbit);

            return(Ok(id));
        }