示例#1
0
 public async Task <HttpResponseMessage> Delete(string id)
 {
     if (id == null)
     {
         return(Request.CreateResponse(HttpStatusCode.BadRequest));
     }
     try
     {
         Task <long> deleteResult = repository.RemoveValue(id);
         await       deleteResult;
         if (deleteResult.Result < 1)
         {
             Console.WriteLine("No documents matched delete query");
             return(Request.CreateResponse(HttpStatusCode.NotFound));
         }
         else
         {
             if (deleteResult.Result > 1)
             {
                 // should not happen: Ids are unique
                 Console.WriteLine("More than one document matched delete query");
                 return(Request.CreateResponse(HttpStatusCode.InternalServerError));
             }
         }
         return(Request.CreateResponse(HttpStatusCode.NoContent));
     }
     catch (Exception ex)
     {
         Console.WriteLine(ex.Message);
         return(Request.CreateResponse(HttpStatusCode.InternalServerError));
     }
 }