Exemplo n.º 1
0
        public GetRequest CreateRequest()
        {
            string addition;

            if (facetSetupDoc != null)
            {
                addition = "facetDoc=" + facetSetupDoc;
                return(new GetRequest
                {
                    Url = "/facets/" + index,
                    Query = string.Format("{0}&facetStart={1}&facetPageSize={2}&{3}",
                                          query.GetQueryString(),
                                          start,
                                          pageSize,
                                          addition)
                });
            }
            var unescapedFacetsJson = AsyncServerClient.SerializeFacetsToFacetsJsonString(facets);

            if (unescapedFacetsJson.Length < (32 * 1024) - 1)
            {
                addition = "facets=" + Uri.EscapeDataString(unescapedFacetsJson);
                return(new GetRequest
                {
                    Url = "/facets/" + index,
                    Query = string.Format("{0}&facetStart={1}&facetPageSize={2}&{3}",
                                          query.GetQueryString(),
                                          start,
                                          pageSize,
                                          addition)
                });
            }

            return(new GetRequest()
            {
                Url = "/facets/" + index,
                Method = "POST",
                Content = unescapedFacetsJson,
                Query = string.Format("{0}&facetStart={1}&facetPageSize={2}",
                                      query.GetQueryString(),
                                      start,
                                      pageSize)
            });
        }