Blogregator: VS.NET Start Page Custom Tab


Over the weekend, I wrote a C# class that generates
custom tabs for the Online Resources portion of the Start Page based on a
whitepaper by Eli Murray and Jonathan Gordon, href="http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dv_vstechart/html/vstchCustomizingVisualStudioStartPageEverett.asp">Customizing
the VS.NET 2003 Start Page.  I call the tab “My Blogs” or simply,
The Bloggregator.  When you open the tab, the underlying xml ‘tab
definition file’ is transformed on the Start Page according to a
server-based xsl spreadsheet and validated per a VS.NET
provided xdr.  If well-formed (and only if), the content of the
specified RSS feed (ie, href="http://blogs.gotdotnet.com/korbyp/blogxbrowsing.asmx/GetRss">http://blogs.gotdotnet.com/korbyp/blogxbrowsing.asmx/GetRss?)
is dynamically rendered. 


The Finished Product is a nicely formatted, condensed, and easily
readable view of an RSS feed.  This includes the Blog Title followed
by the item/title, item/pubdate, and an abbreviated item/description for each
item node in the specified feed.


How It Works: when generating the custom tab, my C# class:


  1. Creates a
    new XmlTextWriter and initializes it with the standard custom tab file
    elements.

  2. Grabs
    an
    RSS feed and saves it as an XmlDocument in memory.

  3. Iterates
    through the XmlDocument using an XPathNodeIterator.

  4. class=787571020-14042003>Writes the text values for the elements of
    interest (title, pubdate, description) from the RSS feed(s) to the
    XmlTextWriter.

  5. Saves the
    writer as MyBlogs.xml in VS.NET’s custom tab directory, overwriting the
    existing file if one already exists.

Next
Steps: 
Currently, my blog feed is hard coded.  I plan to
extend the functionality of the bloggregator tab (using the prescribed
add-in worker element) such that users can type in a blog feed on the
fly or select one they’ve previously provided from a drop down list and
display the contents of the feed with the click of a
button.  
Thereafter, I plan to enable sorting and filtering
by category so that a user can select a feed from one dropdown control and
then select one or more of that feed’s categories from another control
before displaying the feed on their start
page.

Comments (2)

  1. Well, where’s the source! 🙂

  2. josh ledgard says:

    Hey, any chance I could play with this some. If you are reading my blog you’ll see that I’ve been charged with making the start page more interesting. 🙂