Tja
Jag har gjort en rss-feed för att ha på min sida. Jag har använt mig av den här artikeln http://www.dileno.com/default.aspx?CatId=4&ArtId=52.
Allting fungerar förutom en grej. Vid första laddning av sidan så får jag det här felmeddelandet
XML-tolkningsfel: inget element hittat
Adress: http://localhost/nyhet/rss.aspx
Radnummer 1, Kolumn 1:
Sidan innehåller alltså inget. Om jag sedan uppdaterar den så får jag fram allting och det fungerar perfekt. Jag har försökt att hitta felet men hittar det inte.
Här är min kod.
using System;
using System.Data;
using System.Data.SqlClient;
using System.Text;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Caching;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Xml;
using System.IO;
public partial class rss : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
using (SqlConnection connection = new SqlConnection(ConfigurationManager.ConnectionStrings["csNyhet"].ConnectionString))
{
try
{
SqlCommand command = new SqlCommand("HamtaNyheterRSS", connection);
command.CommandType = CommandType.StoredProcedure;
connection.Open();
SqlDataReader reader = command.ExecuteReader();
Response.ContentType = "text/xml";
Response.ContentEncoding = Encoding.UTF8;
StringWriter sw = new StringWriter();
XmlTextWriter rw = new XmlTextWriter(sw);
rw.WriteStartElement("rss");
rw.WriteAttributeString("version", "2.0");
rw.WriteStartElement("channel");
rw.WriteElementString("title", "Nyheter från min nyhetssida");
rw.WriteElementString("link", "http://www.minsida.se");
rw.WriteElementString("description", "Visar de fem senaste nyheterna från min nyhetssida");
rw.WriteElementString("language", "sv-se");
rw.WriteElementString("copyright", "Copyright (c) 2007 minsida");
while (reader.Read())
{
rw.WriteStartElement("item");
rw.WriteElementString("title", reader["nRubrik"].ToString());
rw.WriteElementString("link", "http://localhost/nyhet/nyhet.aspx?id="+ reader["nID"]);
rw.WriteElementString("description", reader["nNyhet"].ToString());
rw.WriteElementString("pubDate", System.Convert.ToDateTime(reader["nDatum"]).ToString("F"));
rw.WriteEndElement();
}
reader.Close();
rw.WriteEndElement();
rw.WriteEndElement();
rw.Close();
if (Cache.Get("rss") == null)
{
Cache.Insert("rss", sw.ToString(), null, DateTime.Now.AddHours(1), TimeSpan.Zero);
}
else
{
Response.Write(Cache["rss"]);
}
sw.Close();
}
catch (SqlException ex)
{
throw ex;
}
finally
{
connection.Close();
}
}
}
}
Vad tror ni kan vara fel?