internal virtual TEntity CreateEntity(object model, UpsertType upsertType) { var entity = Activator.CreateInstance <TEntity>(); UpdateEntity(entity, model, upsertType); return(entity); }
protected internal virtual TEntity ToEntity(TModel model, UpsertType upsertType) { var entity = Entity.Create <TEntity>(); entity.UpdateFrom(model, new EntityUpdateOptions(upsertType)); return(entity); }
protected internal virtual TEntity CreateEntity(TIdentifier identifier, UpsertType upsertType) { var entity = Activator.CreateInstance <TEntity>(); entity.Id = identifier; return(entity); }
internal override TEntity UpdateEntityInternal(TEntity entity, object model, UpsertType upsertType) { if (!(model is TModel tmodel)) { throw new Exception("Model is not TModel"); } return(UpdateEntityModel(entity, tmodel, upsertType)); }
public EntityUpdateOptions(UpsertType upsertType = UpsertType.Instance, params KeyValuePair <string, object>[] options) { UpsertType = upsertType; if (options != null) { foreach (var option in options) { Add(option.Key, option.Value); } } }
override internal TEntity UpdateEntity(TEntity entity, object model, UpsertType upsertType) { if (!(model is TModel tmodel)) { throw new Exception("not good"); } entity.Id = tmodel.Id; entity.UpdateFrom(tmodel); return(entity); }
internal override TEntity UpdateEntity( TEntity entity, object model, UpsertType upsertType) { var entityType = entity.GetType(); var updateFromMethods = entityType.GetMethods() .Where(w => w.Name.Equals("UpdateFrom", StringComparison.OrdinalIgnoreCase)); var actualUpdateFromMethod = updateFromMethods .SingleOrDefault(m => m.GetParameters() .Any(p => p.ParameterType == model.GetType())); actualUpdateFromMethod?.Invoke(entity, new object[] { model, new EntityUpdateOptions(upsertType) }); return(entity); }
public IEnumerable <TEntity> ToEntities(IEnumerable <TModel> models, UpsertType upsertType) { var es = new List <TEntity>(); foreach (var model in models) { var e = wrapper.CreateEntity(model, upsertType); wrapper.UpdateEntity(e, model, upsertType); if (upsertType == UpsertType.Insert) { wrapper.GenerateId(e); } es.Add(e); } return(es); }
internal abstract TEntity UpdateEntityInternal(TEntity entity, object model, UpsertType upsertType);
public virtual TEntity CreateEntity(TModel model, UpsertType upsertType) { return(tableDataService.CreateEntity(model, upsertType)); }
public virtual void UpdateEntity(TEntity e, TModel model, UpsertType upsertType) { tableDataService.UpdateEntity(e, model, upsertType); }
protected internal virtual TEntity UpdateEntityModel(TEntity entity, TModel tmodel, UpsertType upsertType) { entity.Id = tmodel.Id; entity.UpdateFrom(tmodel, new EntityUpdateOptions(upsertType)); return(entity); }
protected internal virtual TEntity CreateEntity(TModel model, UpsertType upsertType) { return(base.CreateEntity(model, upsertType)); }