//uri=api/employees/id
 public void PutEmployee(int id, Employee employee)
 {
     employee.Id = id;
     if (!repository.Update(employee))
     {
         throw new HttpResponseException(HttpStatusCode.NotFound);
     }
 }
        public Employee Add(Employee employee)
        {
            if (employee == null)
            {
                throw new ArgumentNullException("employee");
            }

            _employees.Add(employee);

            return employee;
        }
        //uri=/api/employees
        public HttpResponseMessage PostEmployee(Employee employee)
        {
            employee = repository.Add(employee);

            var response = Request.CreateResponse<Employee>(HttpStatusCode.Created, employee);

            var uri = Url.Link("DefaultApi", new { id = employee.Id });

            response.Headers.Location = new Uri(uri);

            return response;
        }
        public bool Update(Employee employee)
        {
            if (employee == null)
            {
                throw new ArgumentNullException("employee");
            }

            var index = _employees.FindIndex(p => p.Id == employee.Id);
            
            if (index == -1)
            {
                return false;
            }
            _employees.RemoveAt(index);
            _employees.Add(employee);
            return true;
        }