public Task <TripPerson> CreateAsync(TripPerson value) { value.Validate(nameof(value)).Mandatory().Run().ThrowOnError(); return(ManagerInvoker.Default.InvokeAsync(this, async() => { ExecutionContext.Current.OperationType = OperationType.Create; EntityBase.CleanUp(value); if (_createOnPreValidateAsync != null) { await _createOnPreValidateAsync(value).ConfigureAwait(false); } MultiValidator.Create() .Add(value.Validate(nameof(value))) .Additional((__mv) => _createOnValidate?.Invoke(__mv, value)) .Run().ThrowOnError(); if (_createOnBeforeAsync != null) { await _createOnBeforeAsync(value).ConfigureAwait(false); } var __result = await TripPersonDataSvc.CreateAsync(value).ConfigureAwait(false); if (_createOnAfterAsync != null) { await _createOnAfterAsync(__result).ConfigureAwait(false); } Cleaner.Clean(__result); return __result; })); }
public Task <TripPerson> CreateAsync(TripPerson value) { value.Validate(nameof(value)).Mandatory().Run().ThrowOnError(); return(ManagerInvoker.Current.InvokeAsync(this, async() => { ExecutionContext.Current.OperationType = OperationType.Create; Cleaner.CleanUp(value); MultiValidator.Create() .Add(value.Validate(nameof(value))) .Run().ThrowOnError(); return Cleaner.Clean(await _dataService.CreateAsync(value).ConfigureAwait(false)); })); }
public async Task <TripPerson> CreateAsync(TripPerson value) => await ManagerInvoker.Current.InvokeAsync(this, async() => { await value.Validate().Mandatory().RunAsync(throwOnError: true).ConfigureAwait(false); Cleaner.CleanUp(value); return(Cleaner.Clean(await _dataService.CreateAsync(value).ConfigureAwait(false))); }, BusinessInvokerArgs.Create).ConfigureAwait(false);