protected void Button4_Click(object sender, EventArgs e) { LastADEntities entities = new LastADEntities(); if (Session["a"] != null) { list2 = (ArrayList)Session["a"]; } Requisition rr = new Requisition(); List <Requisition> c = new List <Requisition>(); List <string> email = new List <string>(); foreach (int i in list2) { rr = entities.Requisitions.Where(x => x.RequId == i).First(); string emal = rr.Employee.Department.Employees.Where(x => x.RoleId == 5).First().Email.ToString(); c.Add(rr); email.Add(emal); } for (int i = 0; i < this.GridView1.Rows.Count; i++) { TextBox txt = (TextBox)this.GridView1.Rows[i].Cells[5].FindControl("TextBox1"); int RetrievedAmt = Int32.Parse(txt.Text); Label lab = (Label)this.GridView1.Rows[i].Cells[2].FindControl("Label7"); RequDetail requDetail = new RequDetail(); c = c.Where(x => x.RequDetails.Select(y => y.ItemId).Contains(lab.Text)).OrderBy(x => x.SignDate).ToList(); foreach (Requisition requ in c) { DateTime entryday = DateTime.Now; int? RetrievedAmtnt = requ.RequDetails.Where(x => x.ItemId.Equals(lab.Text)).Select(x => x.RequestedQuantity).First(); if (RetrievedAmt == 0) { } else if (RetrievedAmt < RetrievedAmtnt) { RetrievedAmtnt = RetrievedAmt; } if (RetrievedAmtnt != 0) { RequDetail requde = new RequDetail(); requde = requ.RequDetails.Where(x => x.ItemId.Equals(lab.Text)).First(); int balance = Convert.ToInt32(requde.ItemList.Stock) - Convert.ToInt32(RetrievedAmtnt); Transaction tt = new Transaction(); tt.Balance = balance; tt.EntryDate = entryday; tt.ItemId = requde.ItemId; tt.Quantity = RetrievedAmtnt; tt.Requid = requde.RequId; ItemList ii = new ItemList(); ii = requde.ItemList; ii.Stock = balance; entities.Transactions.Add(tt); entities.SaveChanges(); RetrievedAmt = RetrievedAmt - Convert.ToInt32(RetrievedAmtnt); } } foreach (Requisition requ in c) { requ.Status = "Waiting For Delivery"; entities.SaveChanges(); } } foreach (string em in email) { string bossmail = em; Business.sendemail(); MailMessage mm = new MailMessage("*****@*****.**", bossmail); mm.Subject = "Your Requisition order has been send to your collection point "; mm.Body = "Your Requisition order has been send to your collection point, please collect your item before tmr 12:00pm "; Business.sendemail().Send(mm); } Response.Redirect("DisbursementList.aspx"); }