На сервере имеется следующий код:
Response.Clear();
Response.ContentType = "text/xml";
XmlTextWriter textWriter = new XmlTextWriter(Response.Output);
textWriter.WriteStartElement("xml");
textWriter.WriteStartElement("Data");
textWriter.WriteAttributeString("DSName", clientDataSource.DataSourceInfo.ClientDataSourceName);
if (clientDataSource.DataSource != null)
textWriter.WriteRaw(clientDataSource.DataSource.InnerXml); // clientDataSource.DataSource — System.Xml.XmlNode
textWriter.WriteEndElement();
textWriter.WriteEndElement();
Response.End();
На клиенте используется Microsoft.XMLHTTP
Иногда происходит непонятное на клиент вовзращается обрезанный XML (даже можно сказать редко). Отладиться не могу так как данная пробелма происходит на сервере у заказчика (на своем сервере так и не смог воспроизвести. Но у него хоть и редко, но воспроизводится.)
Всякие специальные символы отсутствуют, так что с этим проблему связать нельзя.
Да и оюрезание обычно происходит странное, например:
<Tag1>
.
.
.
</Ta
Если кто сталкивался с данной проблеммой пожалуйста помогите.
Здравствуйте, TK, Вы писали:
TK>Hello, "sergey_mosyakov"
>> >> На сервере имеется следующий код: >> Response.Clear(); >> Response.ContentType = "text/xml"; >> XmlTextWriter textWriter = new XmlTextWriter(Response.Output); >> textWriter.WriteStartElement("xml"); >> textWriter.WriteStartElement("Data"); >> textWriter.WriteAttributeString("DSName", clientDataSource.DataSourceInfo.ClientDataSourceName); >> if (clientDataSource.DataSource != null) >> textWriter.WriteRaw(clientDataSource.DataSource.InnerXml); // clientDataSource.DataSource — System.Xml.XmlNode >> textWriter.WriteEndElement(); >> textWriter.WriteEndElement(); >> Response.End(); >> >> Если кто сталкивался с данной проблеммой пожалуйста помогите.
TK>Response.End зачем надо использовать, нельзя написать код "без извращений"? Да и textWriter раз не закрвается то, можно хотя-бы Flash вызвать.
Вопрос стоял в другом. Обсудить код ты можешь и свой. Response.End сделает тоже самое что Response.Flush только дополнительно остановит дальнейшую обработку запроса. Читай MSDN.
Здравствуйте, sergey_mosyakov, Вы писали:
TK>>Response.End зачем надо использовать, нельзя написать код "без извращений"? Да и textWriter раз не закрвается то, можно хотя-бы Flash вызвать. _>Вопрос стоял в другом. Обсудить код ты можешь и свой.
Хамить ты можешь и себе, а на форуме, будь добр, повежливее.
_>Response.End сделает тоже самое что Response.Flush только дополнительно остановит дальнейшую обработку запроса. Читай MSDN.
Речь о TextWriter.Flush а не Response, чтобы весь построенный Xml сбросить из буфера в поток Response,Output (хотя в любом случае Response.Flush и Response.End делают разные вещи).
Здравствуйте, Andir, Вы писали:
A>Здравствуйте, sergey_mosyakov, Вы писали:
TK>>>Response.End зачем надо использовать, нельзя написать код "без извращений"? Да и textWriter раз не закрвается то, можно хотя-бы Flash вызвать. _>>Вопрос стоял в другом. Обсудить код ты можешь и свой.
A>Хамить ты можешь и себе, а на форуме, будь добр, повежливее.
_>>Response.End сделает тоже самое что Response.Flush только дополнительно остановит дальнейшую обработку запроса. Читай MSDN.
A>Речь о TextWriter.Flush а не Response, чтобы весь построенный Xml сбросить из буфера в поток Response,Output (хотя в любом случае Response.Flush и Response.End делают разные вещи).
A>P.S. Не оверквоть! (аллюзия на К.Пруткова)
A>С Уважением, Andir!
По поводу хамства уважаемый Andir — это еще как посмотреть. Сказать что хот x.. может и человек который ни разу и не писал. А дать дельный совет не каждому дано.
По поводу Flush, вопрос встает другой, почему это не воспроизводимтся на моем сервере и воспроизводится на сервере у заказчика и очень редко?
Если Вы сможете что нибудь просветить на эту тему буду рад.