private void ReturnData(HttpContext context) { NorthwindDataContext db = new NorthwindDataContext(); StoreResponseData sr = new StoreResponseData(); sr.Data = JSON.Serialize(db.Suppliers.ToList()); sr.Return(); }
public void ProcessRequest(HttpContext context) { string action = context.Request["action"]; if (string.IsNullOrEmpty(action) || Store.Action(action) == StoreAction.Read) { this.ReturnData(context); return; } StoreResponseData sr = new StoreResponseData(); try { NorthwindDataContext db = new NorthwindDataContext(); StoreDataHandler dataHandler = new StoreDataHandler(context); List<Supplier> dataList = dataHandler.ObjectData<Supplier>(); StoreAction storeAction = Store.Action(action); foreach (Supplier supplier in dataList) { if (storeAction == StoreAction.Destroy) { db.Suppliers.Attach(supplier); db.Suppliers.DeleteOnSubmit(supplier); } else if (storeAction == StoreAction.Update) { db.Suppliers.Attach(supplier); db.Refresh(RefreshMode.KeepCurrentValues, supplier); } else if (storeAction == StoreAction.Create) { db.Suppliers.InsertOnSubmit(supplier); } } db.SubmitChanges(); if (storeAction != StoreAction.Destroy) { sr.Data = JSON.Serialize(dataList); sr.Return(); return; } } catch (Exception e) { sr.Success = false; sr.Message = e.Message; } sr.Return(); }
public static List<Employee> GetEmployeesFilter(int start, int limit, string sort, string dir, out int count) { NorthwindDataContext db = new NorthwindDataContext(); IQueryable<Employee> result = db.Employees.Select(e => e); if (!string.IsNullOrEmpty(sort)) { var param = Expression.Parameter(typeof(Employee), "e"); if (sort == "BirthDate" || sort == "HireDate") { var sortExpression = Expression.Lambda<Func<Employee, DateTime?>>(Expression.Property(param, sort), param); if (dir == "DESC") { result = result.OrderByDescending(sortExpression); } else { result = result.OrderBy(sortExpression); } } else { var sortExpression = Expression.Lambda<Func<Employee, object>>(Expression.Property(param, sort), param); if (dir == "DESC") { result = result.OrderByDescending(sortExpression); } else { result = result.OrderBy(sortExpression); } } } if (start >= 0 && limit > 0) { result = result.Skip(start).Take(limit); } count = db.Employees.Count(); return result.ToList(); }
public object SaveSuppliers(string data, string action) { Response sr = new Response(true); try { NorthwindDataContext db = new NorthwindDataContext(); StoreDataHandler dataHandler = new StoreDataHandler(data); List<Supplier> dataList = dataHandler.ObjectData<Supplier>(); StoreAction storeAction = Store.Action(action); foreach (Supplier supplier in dataList) { if (storeAction == StoreAction.Destroy) { db.Suppliers.Attach(supplier); db.Suppliers.DeleteOnSubmit(supplier); } else if (storeAction == StoreAction.Update) { db.Suppliers.Attach(supplier); db.Refresh(RefreshMode.KeepCurrentValues, supplier); } else if (storeAction == StoreAction.Create) { db.Suppliers.InsertOnSubmit(supplier); } } db.SubmitChanges(); if (storeAction != StoreAction.Destroy) { return dataList.ToList<Supplier, SerializableEntity<Supplier>>(); } } catch (Exception e) { sr.Success = false; sr.Message = e.Message; } return sr; }
public static List<Employee> GetEmployeesFilter(int start, int limit, DataSorter sort, out int count) { NorthwindDataContext db = new NorthwindDataContext(); IQueryable<Employee> result = db.Employees.Select(e => e); if (sort != null) { ParameterExpression param = Expression.Parameter(typeof(Employee), "e"); if (sort.Property == "BirthDate" || sort.Property == "HireDate") { Expression<Func<Employee, DateTime?>> sortExpression = Expression.Lambda<Func<Employee, DateTime?>>(Expression.Property(param, sort.Property), param); if (sort.Direction == SortDirection.DESC) { result = result.OrderByDescending(sortExpression); } else { result = result.OrderBy(sortExpression); } } else { Expression<Func<Employee, object>> sortExpression = Expression.Lambda<Func<Employee, object>>(Expression.Property(param, sort.Property), param); if (sort.Direction == SortDirection.DESC) { result = result.OrderByDescending(sortExpression); } else { result = result.OrderBy(sortExpression); } } } if (start >= 0 && limit > 0) { result = result.Skip(start).Take(limit); } count = db.Employees.Count(); return result.ToList(); }
public XResponse SaveSuppliers(string data) { Response sr = new Response(true); try { NorthwindDataContext db = new NorthwindDataContext(); StoreDataHandler dataHandler = new StoreDataHandler(data); ChangeRecords<Supplier> dataList = dataHandler.ObjectData<Supplier>(); foreach (Supplier supplier in dataList.Deleted) { db.Suppliers.Attach(supplier); db.Suppliers.DeleteOnSubmit(supplier); } foreach (Supplier supplier in dataList.Updated) { db.Suppliers.Attach(supplier); db.Refresh(RefreshMode.KeepCurrentValues, supplier); } foreach (Supplier supplier in dataList.Created) { supplier.TemporaryID = supplier.SupplierID; db.Suppliers.InsertOnSubmit(supplier); } db.SubmitChanges(); } catch (Exception e) { sr.Success = false; sr.Message = e.Message; } return sr; }
public void ProcessRequest(HttpContext context) { Response sr = new Response(true); try { NorthwindDataContext db = new NorthwindDataContext(); StoreDataHandler dataHandler = new StoreDataHandler(context); ChangeRecords<Supplier> data = dataHandler.ObjectData<Supplier>(); foreach (Supplier supplier in data.Deleted) { db.Suppliers.Attach(supplier); db.Suppliers.DeleteOnSubmit(supplier); } foreach (Supplier supplier in data.Updated) { db.Suppliers.Attach(supplier); db.Refresh(RefreshMode.KeepCurrentValues, supplier); } foreach (Supplier supplier in data.Created) { db.Suppliers.InsertOnSubmit(supplier); } db.SubmitChanges(); } catch (Exception e) { sr.Success = false; sr.Message = e.Message; } sr.Write(); }
public static Employee GetEmployee(int id, NorthwindDataContext db) { return db.Employees.Single(e => e.EmployeeID == id); }
public static Employee GetEmployee(int id) { NorthwindDataContext db = new NorthwindDataContext(); return GetEmployee(id, db); }
public static List<Employee> GetAll() { NorthwindDataContext db = new NorthwindDataContext(); return db.Employees.ToList(); }
public void ProcessRequest(HttpContext context) { Response sr = new Response(true); try { NorthwindDataContext db = new NorthwindDataContext(); StoreDataHandler dataHandler = new StoreDataHandler(context); ChangeRecords<Supplier> data = dataHandler.BatchObjectData<Supplier>(); //ConfirmationList confirmationList = dataHandler.BuildConfirmationList("SupplierID"); foreach (Supplier supplier in data.Deleted) { db.Suppliers.Attach(supplier); db.Suppliers.DeleteOnSubmit(supplier); //confirmationList[supplier.SupplierID.ToString()].ConfirmRecord(); } foreach (Supplier supplier in data.Updated) { db.Suppliers.Attach(supplier); db.Refresh(RefreshMode.KeepCurrentValues, supplier); //confirmationList[supplier.SupplierID.ToString()].ConfirmRecord(); } foreach (Supplier supplier in data.Created) { db.Suppliers.InsertOnSubmit(supplier); } db.SubmitChanges(); //ideally we should confirm after each operation //but LINQ make batch submit of changes foreach (Supplier supplier in data.Deleted) { //confirmationList[supplier.SupplierID.ToString()].ConfirmRecord(); } foreach (Supplier supplier in data.Updated) { //confirmationList[supplier.SupplierID.ToString()].ConfirmRecord(); } foreach (Supplier supplier in data.Created) { //confirmationList[supplier.TemporaryID.ToString()].ConfirmRecord(supplier.SupplierID.ToString()); } StoreResponseData response = new StoreResponseData(); //response.Confirmation = confirmationList; sr.Data = response.ToString(); } catch (Exception e) { sr.Success = false; sr.Message = e.Message; } sr.Write(); }
public List<SerializableEntity<Supplier>> GetAllSuppliers() { NorthwindDataContext db = new NorthwindDataContext(); return db.Suppliers.ToList<Supplier, SerializableEntity<Supplier>>(); }