public Task <Contact?> GetAsync(Guid id) { return(ManagerInvoker.Default.InvokeAsync(this, async() => { ExecutionContext.Current.OperationType = OperationType.Read; EntityBase.CleanUp(id); if (_getOnPreValidateAsync != null) { await _getOnPreValidateAsync(id).ConfigureAwait(false); } MultiValidator.Create() .Add(id.Validate(nameof(id)).Mandatory()) .Additional((__mv) => _getOnValidate?.Invoke(__mv, id)) .Run().ThrowOnError(); if (_getOnBeforeAsync != null) { await _getOnBeforeAsync(id).ConfigureAwait(false); } var __result = await ContactDataSvc.GetAsync(id).ConfigureAwait(false); if (_getOnAfterAsync != null) { await _getOnAfterAsync(__result, id).ConfigureAwait(false); } Cleaner.Clean(__result); return __result; })); }
public Task DeleteAsync(Guid id) { return(ManagerInvoker.Default.InvokeAsync(this, async() => { ExecutionContext.Current.OperationType = OperationType.Delete; EntityBase.CleanUp(id); if (_deleteOnPreValidateAsync != null) { await _deleteOnPreValidateAsync(id).ConfigureAwait(false); } MultiValidator.Create() .Add(id.Validate(nameof(id)).Mandatory()) .Additional((__mv) => _deleteOnValidate?.Invoke(__mv, id)) .Run().ThrowOnError(); if (_deleteOnBeforeAsync != null) { await _deleteOnBeforeAsync(id).ConfigureAwait(false); } await ContactDataSvc.DeleteAsync(id).ConfigureAwait(false); if (_deleteOnAfterAsync != null) { await _deleteOnAfterAsync(id).ConfigureAwait(false); } })); }
public Task <Contact> UpdateAsync(Contact value, Guid id) { value.Validate(nameof(value)).Mandatory().Run().ThrowOnError(); return(ManagerInvoker.Default.InvokeAsync(this, async() => { ExecutionContext.Current.OperationType = OperationType.Update; value.Id = id; EntityBase.CleanUp(value, id); if (_updateOnPreValidateAsync != null) { await _updateOnPreValidateAsync(value, id).ConfigureAwait(false); } MultiValidator.Create() .Add(value.Validate(nameof(value))) .Additional((__mv) => _updateOnValidate?.Invoke(__mv, value, id)) .Run().ThrowOnError(); if (_updateOnBeforeAsync != null) { await _updateOnBeforeAsync(value, id).ConfigureAwait(false); } var __result = await ContactDataSvc.UpdateAsync(value).ConfigureAwait(false); if (_updateOnAfterAsync != null) { await _updateOnAfterAsync(__result, id).ConfigureAwait(false); } Cleaner.Clean(__result); return __result; })); }
public Task <ContactCollectionResult> GetAllAsync() { return(ManagerInvoker.Default.InvokeAsync(this, async() => { ExecutionContext.Current.OperationType = OperationType.Read; if (_getAllOnBeforeAsync != null) { await _getAllOnBeforeAsync().ConfigureAwait(false); } var __result = await ContactDataSvc.GetAllAsync().ConfigureAwait(false); if (_getAllOnAfterAsync != null) { await _getAllOnAfterAsync(__result).ConfigureAwait(false); } Cleaner.Clean(__result); return __result; })); }