public IHttpActionResult Delete(Person person)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            if (!repository.Delete(person))
            {
                return NotFound();
            }

            return Ok(person);
        }
        public IHttpActionResult Post(Person person)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            repository.Create(person);
            return CreatedAtRoute("DefaultApi", new { id = person.Id }, person);
        }
        public IHttpActionResult Put(Person person)
        {
            if (!ModelState.IsValid)
            {
                return BadRequest(ModelState);
            }

            if (!repository.Update(person))
            {
                return NotFound();
            }

            return StatusCode(HttpStatusCode.NoContent);
        }