У меня есть простая (встроенная) страница ASPX, которая выводит XML.
Я хочу импортировать этот XML в Excel 2007, используя Данные | Из других источников | Из импорта данных XML.
Если я укажу URL для моей страницы APSX, Excel откроет результат в мастере импорта текста: (
Если я открою свой URL-адрес прямо из «Блокнота», сохраню содержимое в файл и импортирую его в Excel, его правильная обработка - это XML.
Кто-нибудь может предложить какую-либо причину, почему Excel обрабатывает результат как текст, когда он исходит из URL?
Вот код со страницы ASPX
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.SqlClient" %>
<%@ Import Namespace="System.Xml" %>
<%@ Import Namespace="System.IO" %>
<%@ Import Namespace="System.Text" %>
<%
Response.Clear();
Response.ContentType = "text/xml";
Response.ContentEncoding = Encoding.UTF8;
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
settings.Encoding = Encoding.UTF8;
settings.CloseOutput = false;
settings.CheckCharacters = true;
using (MemoryStream output = new MemoryStream())
{
using (XmlWriter xml = XmlWriter.Create(output, settings))
{
xml.WriteStartDocument();
бла-бла .. создайте XML здесь
xml.WriteEndElement();
xml.Flush();
xml.Close();
}
Response.Write(Encoding.UTF8.GetString(output.ToArray()));
}
Response.End();
%>