public Task <RobotCollectionResult> GetByArgsAsync(RobotArgs?args, PagingArgs?paging) { return(DataInvoker.Current.InvokeAsync(this, async() => { RobotCollectionResult __result = new RobotCollectionResult(paging); var __dataArgs = CosmosMapper.Default.CreateArgs("Items", __result.Paging !, PartitionKey.None, onCreate: _onDataArgsCreate); __result.Result = _cosmos.Container(__dataArgs).Query(q => _getByArgsOnQuery?.Invoke(q, args, __dataArgs) ?? q).SelectQuery <RobotCollection>(); return await Task.FromResult(__result).ConfigureAwait(false); }));
public Task <RobotCollectionResult> GetByArgsAsync(RobotArgs?args, PagingArgs?paging) { return(DataInvoker.Default.InvokeAsync(this, async() => { RobotCollectionResult __result = new RobotCollectionResult(paging); var __dataArgs = CosmosMapper.Default.CreateArgs("Items", __result.Paging !, PartitionKey.None); _onDataArgsCreate?.Invoke(__dataArgs); if (_getByArgsOnBeforeAsync != null) { await _getByArgsOnBeforeAsync(args, __dataArgs).ConfigureAwait(false); } __result.Result = CosmosDb.Default.Container(__dataArgs).Query(q => _getByArgsOnQuery == null ? q : _getByArgsOnQuery(q, args, __dataArgs)).SelectQuery <RobotCollection>(); if (_getByArgsOnAfterAsync != null) { await _getByArgsOnAfterAsync(__result, args).ConfigureAwait(false); } return __result; }, new BusinessInvokerArgs {
/// <summary> /// Gets the <see cref="Robot"/> collection object that matches the selection criteria. /// </summary> /// <param name="args">The Args (see <see cref="RobotArgs"/>).</param> /// <param name="paging">The <see cref="PagingArgs"/>.</param> /// <returns>A <see cref="RobotCollectionResult"/>.</returns> public Task <RobotCollectionResult> GetByArgsAsync(RobotArgs args, PagingArgs paging) { return(DataInvoker.Default.InvokeAsync(this, async() => { RobotCollectionResult __result = new RobotCollectionResult(paging); var __dataArgs = CosmosDbArgs.Create("Items", PartitionKey.None, __result.Paging); if (_getByArgsOnBeforeAsync != null) { await _getByArgsOnBeforeAsync(args, __dataArgs); } __result.Result = CosmosDb.Default.Query <Robot>(__dataArgs, q => _getByArgsOnQuery == null ? q : _getByArgsOnQuery(q, args, __dataArgs)).SelectQuery <RobotCollection>(); if (_getByArgsOnAfterAsync != null) { await _getByArgsOnAfterAsync(__result, args); } return __result; }, new BusinessInvokerArgs { ExceptionHandler = _getByArgsOnException })); }