public T Update(T entity, IDataCommandSpecification <T> spec) { entity.SetDirty(); T updEntity; SetEntityState <T, TKey>(entity, out updEntity); spec.Prepare(entity); ctx.SaveChanges(); return(updEntity); }
public T Create(T entity, IDataCommandSpecification <T> spec) { entity.SetNew(); T newEntity; SetEntityState <T, TKey>(entity, out newEntity); spec.Prepare(entity); ctx.SaveChanges(); return(newEntity); }
public void Initialize() { var modelBuilder = new CustomerModelBuilder(); ctx = new CustomerDataContext(modelBuilder); cmd = new CustomerDataCommand(ctx); qry = new CustomerDataQuery(ctx); Action <Customer> action = delegate(Customer cust) { cust.DeliveryProducts.ToList().ForEach(prod => { cmd.SetEntityState <DeliveryProduct, int>(prod); }); }; cmdSpec = new CustomerDataCommandSpecification(action); }