Example #1
0
        public HttpResponseMessage Put([FromBody] int id, [FromUri] Employee employee)
        {
            try
            {
                using (EmployeeServiceDBEntities entites = new EmployeeServiceDBEntities())
                {
                    var entity = entites.Employees.FirstOrDefault(e => e.ID == id);

                    if (entity == null)
                    {
                        return(Request.CreateErrorResponse(HttpStatusCode.NotFound, "Employee with id = " + id.ToString() + " not found to update"));
                    }
                    else
                    {
                        entity.FirstName = employee.FirstName;
                        entity.LastName  = employee.LastName;
                        entity.Gender    = employee.Gender;
                        entity.Salary    = employee.Salary;
                        entites.SaveChanges();

                        return(Request.CreateResponse(HttpStatusCode.OK, entity));
                    }
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Example #2
0
 public HttpResponseMessage LoadEmployeeById(int id)//this entity is generated by ado.net
 {
     using (EmployeeServiceDBEntities entities = new EmployeeServiceDBEntities())
     {
         var entity = entities.Employees.FirstOrDefault(e => e.ID == id);
         if (entity != null)
         {
             return(Request.CreateResponse(HttpStatusCode.OK, entity));
         }
         else
         {
             return(Request.CreateErrorResponse(HttpStatusCode.NotFound, "Employee with ID = " + id.ToString() + " not found"));
         }
     }
 }
Example #3
0
        public HttpResponseMessage Post([FromBody] Employee employee)//[FromBody] is giving info about that employee will come from request body
        {
            try
            {
                using (EmployeeServiceDBEntities entities = new EmployeeServiceDBEntities())
                {
                    entities.Employees.Add(employee);//id is automatically generated
                    entities.SaveChanges();

                    var message = Request.CreateResponse(HttpStatusCode.Created, employee);
                    message.Headers.Location = new Uri(Request.RequestUri + "/" + employee.ID.ToString());//sender will retrieve uri for GET created row
                    return(message);
                }
            }
            catch (Exception ex)
            {
                return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
            }
        }
Example #4
0
        [HttpGet]                                                          //if this method was called loadAllEmployees it wouldn't work without [HttpGet]
        public HttpResponseMessage LoadAllEmployees(string gender = "All") //this entity is generated by ado.net
        {
            using (EmployeeServiceDBEntities entities = new EmployeeServiceDBEntities())
            {
                switch (gender.ToLower())
                {
                case "all":
                    return(Request.CreateResponse(HttpStatusCode.OK, entities.Employees.ToList()));

                case "male":
                    return(Request.CreateResponse(HttpStatusCode.OK, entities
                                                  .Employees.Where(e => e.Gender.ToLower() == "male").ToList()));

                case "female":
                    return(Request.CreateResponse(HttpStatusCode.OK, entities
                                                  .Employees.Where(e => e.Gender.ToLower() == "female").ToList()));

                default:
                    return(Request.CreateErrorResponse(HttpStatusCode.BadRequest,
                                                       "Value for gender must be All, Male or Female. " + gender + " is invalid"));
                }
            }
        }
Example #5
0
 public HttpResponseMessage Delete(int id)
 {
     try
     {
         using (EmployeeServiceDBEntities entities = new EmployeeServiceDBEntities())
         {
             var entity = entities.Employees.FirstOrDefault(e => e.ID == id);
             if (entity == null)
             {
                 return(Request.CreateErrorResponse(HttpStatusCode.NotFound, "Employee with id = " + id.ToString() + " not found to delete"));
             }
             else
             {
                 entities.Employees.Remove(entity);
                 entities.SaveChanges();
                 return(Request.CreateResponse(HttpStatusCode.OK));
             }
         }
     }
     catch (Exception ex)
     {
         return(Request.CreateErrorResponse(HttpStatusCode.BadRequest, ex));
     }
 }