注册 登录
编程论坛 ASP.NET技术论坛

生成不了rss订阅页面

gsbe1987 发布于 2008-09-27 17:55, 952 次点击
我想做一个Rss订阅页面,但是生成出来的却不像网络上的那样的效果,只是单纯的数据显示,下面是我的前台代码
程序代码:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="rss.aspx.cs" Inherits="Page_rss" %>

        <asp:Repeater ID="rss" runat="server">
          <HeaderTemplate>
            <?xml version="1.0" encoding="gb2312"?>
            <rss version="2.0">
            <channel>
            <title>Lisen</title>
            <link>http://www.
            <description>Rss</description>
            <copyright>copyright by lisen</copyright>
          </HeaderTemplate>
          <ItemTemplate>
            <item>
               <title><%# Eval("title") %></title>
               <description><%# Eval("content") %></description>
               <link>www. </ItemTemplate>
          <FooterTemplate>
            </channel>
            </rss>
          </FooterTemplate>
        </asp:Repeater>


编译一次没有什么问题,但是关闭页面再浏览一下,就出现
只有本站会员才能查看附件,请 登录
这样的信息提示
有哪位高手知道怎么回事,帮忙看一下,我很急啊,谢谢~~
1 回复
#2
黑白之间2008-10-19 12:11
StringBuilder sbudr = new StringBuilder();
            sbudr.Append("<?xml version="1.0" encoding="gb2312"?>\r\n");
            sbudr.Append(" <rss version="2.0"> \r\n");
            sbudr.Append("<channel> \r\n");
            sbudr.Append("<title>Lisen</title> \r\n");
            sbudr.Append("<link>http://www. \r\n");
            sbudr.Append("<description>Rss</description> \r\n");
            sbudr.Append("<copyright>copyright by lisen</copyright>\r\n");
            foreach (DataRow dr in dt.Rows)
            {
                sbudr.Append("<item>\r\n");
                sbudr.Append("<title>"+dr["字段一"]+"</title>\r\n");
                sbudr.Append("<description>"+dr["字段二"]+"</description>\r\n");
                sbudr.Append("<link>www.\r\n");
            </item>

            }
         
            sbudr.Append("  </channel>\r\n");
            sbudr.Append("</rss>");
            Response.ContentType = "text/xml";
            Response.Charset = "gb2312";
            Response.Write(sbudr.ToString());
            Response.End();

        }
1