Esempio n. 1
0
 public async Task <List <EmployeeDetails> > GetPayDetail(Employee selectedEmployee, DateTime from, DateTime to)
 {
     using (var ctx = new EmpDbContext())
     {
         return(await ctx.EmployeeDetails.Include(e => e.Employee).Where(ed => (ed.EmpId == selectedEmployee.EmpId)).Where(ed => ed.WorkDate >= from && ed.WorkDate <= to).AsNoTracking().ToListAsync());
     }
 }
Esempio n. 2
0
 public async void saveEmployeeDetails(List <EmployeeDetails> changedItems, List <EmployeeDetails> employeeDetailsFromDatabase)
 {
     using (var ctx = new EmpDbContext())
     {
         foreach (var changedItem in changedItems)
         {
             EmployeeDetails recordFromDatabase = employeeDetailsFromDatabase.Find(e => e.WorkDate.ToShortDateString().Equals(changedItem.WorkDate.ToShortDateString()));
             if (recordFromDatabase == null)//Add Record
             {
                 ctx.EmployeeDetails.Add(changedItem);
                 ctx.Entry(changedItem.Employee).State = EntityState.Unchanged;
                 ctx.Entry(changedItem).State          = EntityState.Added;
                 await ctx.SaveChangesAsync();
             }
             else if (isChangedItemActuallyUpdated(recordFromDatabase, changedItem))//Update Records
             {
                 ctx.EmployeeDetails.Attach(changedItem);
                 ctx.Entry(changedItem).State = EntityState.Modified;
                 await ctx.SaveChangesAsync();
             }
         }
     }
 }
Esempio n. 3
0
 public static async Task <List <Employee> > getEmpFromDatabaseAsync()
 {
     using (var ctx = new EmpDbContext()) {
         return(await ctx.Employee.AsNoTracking().ToListAsync());
     }
 }