Вопрос

У меня проблемы с получением потока памяти и класса XML-редактора текста для совместной работы.

Context.Reponse.BufferOutput=true;
Context.Response.ContentType = "application/xml";
stmOutput = new MemoryStream();
Output = new XmlTextWriter(stmOutput, Encoding.ASCII);
Output.WriteStartDocument();
Output.WriteStartElement("MyTag");
Output.WriteEndElement();
Output.WriteEndDocument();
Output.Flush();
stmOutput.Flush(); 
Context.Response.OutputStream.Write(stmOutput.ToArray(),0,(int)stmOutput.Length-1);
Context.Response.OutputStream.Flush();
Output.Close();

Это делается внутри файла ASHX. Когда я запускаю это, все, что получает вывод, это

<?xml version="1.0" encoding="us-ascii"?><MyTag /

Я что-то упустил с помощью Response, или потока памяти, или средства записи XML-текста? Я немного растерялся, потому что я следую небольшому руководству, которое делает все, что показывает, но вместо этого использует поток памяти, и он не работает. .

Это было полезно?

Решение

Вы пытались удалить -1 в Length ? Я думаю, что единственное, чего не хватает в выходных данных - это " " .

Context.Response.OutputStream.Write(stmOutput.ToArray(), 0, (int)stmOutput.Length);
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top