Невозможно получить <результат>, если используется "Sforce-Enable-PKChunking:true"

Я могу создать задание и batch.to получить данные в пакетном режиме, я использую "Sforce-Enable-PKChunking:true" в заголовке. Каким-то образом он не дает мне идентификатор результата (теги xml не генерируются) для получения фактического данные. У меня большой набор данных. У меня 1 миллион записей, вот код

public string GetResultID(string jobID,string batchID)
                    {
                        string ResultId = null;        
                        XmlDocument reqDoc = new XmlDocument();
                      String batchURL = "https://xxxx/async/42.0/job/" + jobID + "/batch/" + batchID + "/result";
                       XmlDocument responseXmlDocument = myHttpPostResult(batchURL, sid, "GET", "text/csv; charset=UTF-8");            
                            ResultId = responseXmlDocument.GetElementsByTagName("result").Item(0).InnerText;          
                        return ResultId;

                    }

Метод myHttpPostResult
Метод ниже возвращает XML без тега результата. Я хочу получить идентификатор результата, который находится в теге результата. этот идентификатор я использовал для получения большого количества данных.

 public static XmlDocument myHttpPostResult(String reqURL, string sessionId, string method, string contentType)
                        {
                            XmlDocument responseXmlDocument = new XmlDocument();
                            WebRequest requestHttp = WebRequest.Create(reqURL);
                                requestHttp.Method = method;                
                                requestHttp.ContentType = contentType;
                                requestHttp.Headers.Add(("X-SFDC-Session: " + sessionId));          
                                requestHttp.Headers.Add(("Sforce-Enable-PKChunking:true"));
                                requestHttp.Headers.Add("SOAPAction", "query");
                                using (WebResponse responseHttpRequest = requestHttp.GetResponse())
                                {
                                    Stream responseStream = responseHttpRequest.GetResponseStream();
                                    responseXmlDocument.Load(responseStream);

                                }
                                return responseXmlDocument;



                            }

0 ответов

Другие вопросы по тегам