示例#1
0
 public Task <ProductCollectionResult> GetByArgsAsync(ProductArgs?args, PagingArgs?paging)
 {
     return(DataInvoker.Current.InvokeAsync(this, async() =>
     {
         ProductCollectionResult __result = new ProductCollectionResult(paging);
         var __dataArgs = ODataMapper.Default.CreateArgs(__result.Paging !, "Products");
         __result.Result = _odata.Query(__dataArgs, q => _getByArgsOnQuery?.Invoke(q, args, __dataArgs) ?? q).SelectQuery <ProductCollection>();
         return await Task.FromResult(__result).ConfigureAwait(false);
     }));
示例#2
0
        public Task<ProductCollectionResult> GetByArgsAsync(ProductArgs? args, PagingArgs? paging)
        {
            return DataInvoker.Default.InvokeAsync(this, async () =>
            {
                ProductCollectionResult __result = new ProductCollectionResult(paging);
                var __dataArgs = ODataMapper.Default.CreateArgs(__result.Paging!);
                if (_getByArgsOnBeforeAsync != null) await _getByArgsOnBeforeAsync(args, __dataArgs).ConfigureAwait(false);
                __result.Result = await TestOData.Default.SelectQueryAsync<ProductCollection, Product>(__dataArgs,
                    q => _getByArgsOnQuery == null ? q : _getByArgsOnQuery(q, args, __dataArgs)).ConfigureAwait(false);

                if (_getByArgsOnAfterAsync != null) await _getByArgsOnAfterAsync(__result, args).ConfigureAwait(false);
                return __result;
            }, new BusinessInvokerArgs { ExceptionHandler = _getByArgsOnException });