Asp.net 通过HTTP将XML导入Excel
我有一个简单的(内联)ASPX页面,可以输出XML 我想使用XML数据导入中的数据|来自其他来源|将此XML导入Excel 2007 如果我为我的APSX页面指定URL,Excel会将结果打开到文本导入向导中:( 如果我直接从记事本打开我的URL,将内容保存到一个文件中并将其导入Excel,则正确处理的是Xml 有人能解释一下为什么Excel将来自Url的结果视为文本吗 这是来自ASPX页面的代码Asp.net 通过HTTP将XML导入Excel,asp.net,xml,excel-2007,Asp.net,Xml,Excel 2007,我有一个简单的(内联)ASPX页面,可以输出XML 我想使用XML数据导入中的数据|来自其他来源|将此XML导入Excel 2007 如果我为我的APSX页面指定URL,Excel会将结果打开到文本导入向导中:( 如果我直接从记事本打开我的URL,将内容保存到一个文件中并将其导入Excel,则正确处理的是Xml 有人能解释一下为什么Excel将来自Url的结果视为文本吗 这是来自ASPX页面的代码 <%@ Page Language="C#" %> <%@ Import Nam
<%@ 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();
这是一个猜测,但是您是否尝试使用不同的内容类型发送响应 我将使用以下MIME类型之一进行拍摄:
- 应用程序/xml
- 应用程序/vnd.ms-excel
- 应用程序/x-excel
- 应用程序/x-msexcel
xml.WriteEndElement();
xml.Flush();
xml.Close();
}
Response.Write(Encoding.UTF8.GetString(output.ToArray()));
}
Response.End();
%>