コード例 #1
0
 public Person Create(Person person) {
     if (person == null) {
         throw new ArgumentNullException("person");
     }
     person.Id = _nextId++;
     _people.Add(person);
     return person;
 }
コード例 #2
0
 public int Update(Person person) {
     if (person == null) {
         throw new ArgumentNullException("person");
     }
     int index = _people.FindIndex(e => e.Id == person.Id);
     if (index == -1) {
         return 0;
     }
     _people.RemoveAt(index);
     _people.Add(person);
     return 1;
 }
コード例 #3
0
 // PUT /api/Person/3
 public HttpResponseMessage Put(int Id, Person person)
 {
     if (ModelState.IsValid) {
         try {
             int numRowsAffected = _personRepository.Update(person);
             var response = Request.CreateResponse<CrudResult>(HttpStatusCode.OK, new CrudResult(CrudStatusCode.Success, numRowsAffected, new List<Person> { person }));
             string uri = Url.Link("DefaultApi", new { Id = person.Id });
             response.Headers.Location = new Uri(uri);
             return response;
         }
         catch (Exception ex) {
             return Request.CreateErrorResponse(HttpStatusCode.NotModified, ex.Message);
         }
     }
     else {
         return Request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
     }
 }