【问题标题】:No xml output on page页面没有xml输出
【发布时间】:2010-05-05 08:26:49
【问题描述】:

我正在尝试在我的 aspx 页面上输出 xml。但它没有返回任何结果。

aspx页面:

<%@ Page Language="C#" AutoEventWireup="false" CodeBehind="Sitemap.aspx.cs"
 Inherits="Servicebyen.Presentation.Web.Sitemap" %>

后面的代码:

protected void Page_Load(object sender, EventArgs e)
{
    Response.Clear();
    Response.ContentType = "text/xml";

    var writer = new XmlTextWriter(Response.OutputStream, Encoding.UTF8);

    writer.Settings.CloseOutput = false;
    writer.WriteStartDocument();
    writer.WriteStartElement("urlset");
    writer.WriteAttributeString("xmlns", "http://www.sitemaps.org/schemas/sitemap/0.9");
    writer.WriteEndElement();
    writer.WriteEndDocument();
    writer.Flush();
    writer.Close();
    Response.End();
}

你能看出这有什么问题吗?

【问题讨论】:

  • 你能澄清一下“没有结果”是什么意思吗?你的意思是它在浏览器中显示为空白?您是否尝试过使用命令行工具获取内容?如果您在浏览器中“查看源代码”会发生什么?你至少得到了正确的内容类型标题吗?
  • 它在浏览器中显示为空白。当我查看源代码时,我得到:我应该怎么做?

标签: asp.net xml outputstream


【解决方案1】:

如果您在 Google Chrome 中对此进行测试,那么您将得到一个空白页面,因为它不能很好地从网站呈现 xml 文件。

要尝试的另一件事是将其实现为页面而不是将其实现为Generic Handler。这避免了 ASP.NET 页面生命周期的开销,并减少了可能发生错误的地方。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-25
    • 1970-01-01
    • 1970-01-01
    • 2020-11-20
    • 1970-01-01
    相关资源
    最近更新 更多