2010-09-02 97 views
1

我有一個輸出XML的簡單(內聯)ASPX頁面。通過HTTP將XML導入到Excel中

我想將這個XML導入Excel 2007使用數據|來自其他來源|從XML數據導入。

如果我指定我APSX頁Excel中輸入網址打開該結果到文本導入嚮導:(

如果我直接打開我的網址,從記事本,將內容保存到一個文件,並導入到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(); 
%> 

回答

2

這是胡亂猜測,但你有沒有試圖發送使用不同的內容類型的反應如何?

我想給它一個鏡頭具有以下MIME類型之一:

  • 應用程序/ XML
  • 應用程序/ vnd.ms - Excel中
  • 應用程序/ x-Excel的
  • 應用/ X-msexcel的

相關資源:

+0

第一個做到了..謝謝! – 2010-09-02 12:40:33