После обновления ответы будут text / html вместо text / xml - PullRequest
0 голосов
/ 10 декабря 2010

У меня есть несколько проектов, которые я только что обновил с Visual Studio 2003 и ASP.NET v1 до Visual Studio 2008 и ASP.NET v2.Я явно устанавливаю тип «text / xml», и это было нормально, браузеры отображали его как xml, а IE даже помещал милые маленькие знаки +/- рядом с каждым тегом.После обновления IE отображает только содержимое элемента и игнорирует все теги, как если бы содержимое было html.

   Response.ContentType = "text/xml";
   String resp = "<soap:Envelope>...blah, blah, lots of xml...</soap:Envelope>\n";
   Response.Write(resp);

Я сделал обновления, потому что кто-то (буквально) отключил наш сервер, и ему пришлосьбыть перестроен, поэтому в процессе мы перешли с IIS 5.1 на IIS 6.0.

Кто-нибудь знает, как решить эту проблему?ТИА.

1 Ответ

1 голос
/ 10 декабря 2010

Вы должны сделать следующее перед написанием содержания:

Response.Buffer = true;
Response.ClearContent();
Response.ClearHeaders();
Response.ContentType = "text/xml";

Затем, после того как вы записали свои XML-данные в ответ, просто наберите Response.End();, чтобы убедиться, что больше ничего не добавляется / не изменяется.


EDIT1: Давайте попробуем следующее:

Добавьте строку <?xml version='1.0' encoding='UTF-8'?> перед началом строки " ..."

Если это все еще не работает, то мой последний шанс - изменить тип контента на application/soap+xml

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...