Exemplo n.º 1
0
        /// <summary>
        /// Выполняет запрос на получение документов.
        /// </summary>
        public Task <ServiceResult <DocumentGetQueryResult> > GetAsync(DocumentGetQueryClient query)
        {
            var requestPath = new StringBuilder(_basePath).Append("?");

            if (query != null)
            {
                if (!string.IsNullOrWhiteSpace(query.Search))
                {
                    requestPath.AppendFormat("search={0}&", query.Search);
                }

                if (!string.IsNullOrWhiteSpace(query.Filter))
                {
                    requestPath.AppendFormat("filter={0}&", query.Filter);
                }

                if (!string.IsNullOrWhiteSpace(query.Select))
                {
                    requestPath.AppendFormat("select={0}&", query.Select);
                }

                if (!string.IsNullOrWhiteSpace(query.Order))
                {
                    requestPath.AppendFormat("order={0}&", query.Order);
                }

                if (query.Count == true)
                {
                    requestPath.Append("count=true&");
                }

                if (query.Skip > 0)
                {
                    requestPath.AppendFormat("skip={0}&", query.Skip);
                }

                if (query.Take > 0)
                {
                    requestPath.AppendFormat("take={0}&", query.Take);
                }
            }

            requestPath.Remove(requestPath.Length - 1, 1);

            var requestUri = BuildRequestUri(requestPath.ToString());

            return(RequestExecutor.GetAsync <ServiceResult <DocumentGetQueryResult> >(requestUri));
        }