protected async Task Edit(T item) { var id = idProp.GetValue(item); T copy = await dbContext.Set <T>().FindAsync(id); cloneItems.Clone(item, copy); dbContext.Entry <T>(copy).State = EntityState.Modified; await dbContext.SaveChangesAsync(); await OnEdit(); await OnDbChanged(id); }
protected virtual void ToDetailsPage(bool isEdit) { if (!isEdit) { T item = new T(); OnSetDefaults(item); fieldsGenerator.SetItem(item); } else { T copy = new T(); cloneItems.Clone(SelectedItem, copy); fieldsGenerator.SetItem(copy); } fieldsGenerator.SetupControls(_propBuilder.PropertyControls, isEdit); Locator.SetDetailsViewModel <T>(); pageservice.ChangePage <Pages.ItemDetailPage>(PoolIndex, DisappearAndToSlideAnim.ToLeft); }