public Task <HolidayWrap> GetHoliday(string Month, int Year) { return(Task.Run(() => { string s = Year + "-" + Month; DateTime dt = DateTime.ParseExact(s, "yyyy-MMM", CultureInfo.InvariantCulture); using (MIUEntities db = new MIUEntities()) { HolidayWrap holidayWrap = new HolidayWrap(); List <HolidayInfo> HolidayInfos = new List <HolidayInfo>(); List <Holiday> holiday = db.Holidays.Where(x => x.Date.Year == dt.Year && x.Date.Month == dt.Month).OrderBy(x => x.Date).ToList(); foreach (var data in holiday) { HolidayInfo info = new HolidayInfo(); PropertyCopier <Holiday, HolidayInfo> .Copy(data, info); info.Week = data.Date.ToString("ddd"); info.Day = data.Date.Day.ToString(); HolidayInfos.Add(info); } holidayWrap.HolidayInfo = HolidayInfos; holidayWrap.TotalHoliday = HolidayInfos.Count; return holidayWrap; } })); }
public async Task <HttpResponseMessage> GetHoliday(string Month, int Year) { try { TimeTableDAL dal = new TimeTableDAL(); HolidayWrap data = await dal.GetHoliday(Month, Year); if (data != null) { return(Request.CreateResponse <HolidayWrap>(HttpStatusCode.OK, data)); } else { return(Request.CreateErrorResponse(HttpStatusCode.NotFound, Constants.ErrorNotFound)); } } catch (DbEntityValidationException ex) { var controllerName = ControllerContext.RouteData.Values["controller"].ToString(); var actionName = ControllerContext.RouteData.Values["action"].ToString(); Logger log = new Logger(); log.ErrorLog(ex, controllerName, actionName); return(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, Constants.ErrorSysError)); } }