private static readonly string FeedUrl = ConfigurationManager.AppSettings["FeedUrl"];
/// <summary>
/// Gets the feed at the specified URL.
/// </summary>
/// <param name="url">The URL.</param>
/// <returns>A <see cref="SyndicationFeed"/> object.</returns>
public static SyndicationFeed GetFeed(String url)
{
SyndicationFeed feed = null;
if ( !String.IsNullOrEmpty(url) && url.StartsWith("~") )
{
// resolve virtual path to physical file system
url = System.Web.HttpContext.Current.Server.MapPath(url);
}
try
{
log.Debug("Loading RSS feed: " + url);
using ( var reader = XmlReader.Create(url) )
{
feed = SyndicationFeed.Load(reader);
}
}
catch ( Exception ex )
{
log.Error("Error occurred while loading RSS feed: " + url, ex);
}
return feed;
}