protected override bool VisitCollectionsBeforeSave(object entity, object id, object[] values, Type.IType[] types, IEventSource source) { //TODO: we use two visitors here, inefficient! OnReplicateVisitor visitor = new OnReplicateVisitor(source, id, entity, false); visitor.ProcessEntityPropertyValues(values, types); return(base.VisitCollectionsBeforeSave(entity, id, values, types, source)); }
protected override async Task<bool> VisitCollectionsBeforeSaveAsync(object entity, object id, object[] values, Type.IType[] types, IEventSource source, CancellationToken cancellationToken) { cancellationToken.ThrowIfCancellationRequested(); //TODO: we use two visitors here, inefficient! OnReplicateVisitor visitor = new OnReplicateVisitor(source, id, entity, false); await (visitor.ProcessEntityPropertyValuesAsync(values, types, cancellationToken)).ConfigureAwait(false); return await (base.VisitCollectionsBeforeSaveAsync(entity, id, values, types, source, cancellationToken)).ConfigureAwait(false); }