<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Aboutdev&#039;s Weblog</title>
	<atom:link href="http://aboutdev.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://aboutdev.wordpress.com</link>
	<description>.Net, C#, Visual Studio, SharePoint, WCF, WPF, WF, SQL, Architecture, Design Patterns, Software Engineering, Code</description>
	<lastBuildDate>Tue, 10 Jan 2012 23:48:32 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='aboutdev.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://s2.wp.com/i/buttonw-com.png</url>
		<title>Aboutdev&#039;s Weblog</title>
		<link>http://aboutdev.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://aboutdev.wordpress.com/osd.xml" title="Aboutdev&#039;s Weblog" />
	<atom:link rel='hub' href='http://aboutdev.wordpress.com/?pushpress=hub'/>
		<item>
		<title>What Technologies Should Every Software Developer Look At</title>
		<link>http://aboutdev.wordpress.com/2012/01/10/technologies-every-software-developer-should-look-at/</link>
		<comments>http://aboutdev.wordpress.com/2012/01/10/technologies-every-software-developer-should-look-at/#comments</comments>
		<pubDate>Tue, 10 Jan 2012 04:05:52 +0000</pubDate>
		<dc:creator>aboutdev</dc:creator>
				<category><![CDATA[Learning]]></category>
		<category><![CDATA[Tips]]></category>

		<guid isPermaLink="false">http://aboutdev.wordpress.com/?p=239</guid>
		<description><![CDATA[I was recently asked to provide a list of technologies that might help developers become more current and help them decide what is important for their careers. I wanted to put together a list that was comprehensive, but that is just not feasible or practical. So let me throw this list out to you and [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=239&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I was recently asked to provide a list of technologies that might help developers become more current and help them decide what is important for their careers. I wanted to put together a list that was comprehensive, but that is just not feasible or practical. So let me throw this list out to you and get your feedback. [Lets not start a holy war of c++ vs. java vs. .Net vs. &lt;insert language here&gt;!]</p>
<p><strong>I would really appreciate your honest feedback on what YOU consider to be important that is on this list or that I may have missed. </strong>My hope is to find a list of 10 technologies that you consider to be absolutely necessary for Software Developers to know in the coming years. They don&#8217;t have to be the list below, please feel free to add to this. Thank you.  <strong><br />
</strong></p>
<ol>
<li>F#</li>
<li>Windows Azure</li>
<li>Jaxer / Node.js / Narwhal</li>
<li>CoffeeScript</li>
<li>TFS / Git / Mercurial</li>
<li>Design Patterns</li>
<li>SQL Deep Dive</li>
<li>Windows Phone 7</li>
<li>Windows 8 Development</li>
<li>Ruby on Rails</li>
<li>XAML</li>
<li>XNA Framework</li>
<li>Parallel Framework</li>
<li>Visual Studio 2010 Tips &amp; Tricks (poll devs for tips)</li>
<li>WPF / MVVM &amp; MVPVM (Movel View Presenter ViewModel)</li>
<li>How to debug using WinDbg &amp; SysInternals Tools</li>
<li>DSLs (in Boo or Otherwise)</li>
<li>Machine Learning</li>
<li>Windows Workflow</li>
<li>Hadoop</li>
<li>I-Phone programming</li>
<li>Kinect Programming</li>
<li>Silverlight</li>
<li>HTML 5 Canvas Programming</li>
<li>Powershell administration (managing servers etc would become much easier)</li>
</ol>
<br /> Tagged: <a href='http://aboutdev.wordpress.com/tag/learning/'>Learning</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aboutdev.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aboutdev.wordpress.com/239/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aboutdev.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aboutdev.wordpress.com/239/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aboutdev.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aboutdev.wordpress.com/239/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aboutdev.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aboutdev.wordpress.com/239/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aboutdev.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aboutdev.wordpress.com/239/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aboutdev.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aboutdev.wordpress.com/239/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aboutdev.wordpress.com/239/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aboutdev.wordpress.com/239/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=239&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aboutdev.wordpress.com/2012/01/10/technologies-every-software-developer-should-look-at/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5854b7a26eeb1ca639abc8c78cd410de?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Sushant Bhatia</media:title>
		</media:content>
	</item>
		<item>
		<title>Reporting In ASP.NET MVC 3</title>
		<link>http://aboutdev.wordpress.com/2012/01/07/reporting-in-asp-net-mvc-3/</link>
		<comments>http://aboutdev.wordpress.com/2012/01/07/reporting-in-asp-net-mvc-3/#comments</comments>
		<pubDate>Sat, 07 Jan 2012 19:55:04 +0000</pubDate>
		<dc:creator>aboutdev</dc:creator>
				<category><![CDATA[ASP.NET MVC]]></category>
		<category><![CDATA[Aspose.Cells]]></category>
		<category><![CDATA[Report Builder 3.0]]></category>
		<category><![CDATA[Reporting Services]]></category>
		<category><![CDATA[Reports]]></category>
		<category><![CDATA[SQL Server Express R2]]></category>
		<category><![CDATA[SSRS]]></category>
		<category><![CDATA[Telerik.Reporting]]></category>
		<category><![CDATA[aspose]]></category>
		<category><![CDATA[data manipulation]]></category>
		<category><![CDATA[excel sheet]]></category>
		<category><![CDATA[pdf report]]></category>
		<category><![CDATA[Reporting]]></category>
		<category><![CDATA[reporting solution]]></category>
		<category><![CDATA[Sql Server 2008 Express R2]]></category>

		<guid isPermaLink="false">https://aboutdev.wordpress.com/?p=234</guid>
		<description><![CDATA[This past week I had a need to create a report for an ASP.NET MVC 3 app I was working on. The requirement for the report was to show charts of the data and to provide the original data using databars and indicators and output it to PDF. Not a very complex report at all. [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=234&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This past week I had a need to create a report for an ASP.NET MVC 3 app I was working on. The requirement for the report was to show charts of the data and to provide the original data using databars and indicators and output it to PDF. Not a very complex report at all. But somehow, there were some Goldilocks moments which I present to you now. </p>
<h3>Telerik.Reporting – Too Cold</h3>
<p>The first thing I tried was the <a href="http://www.telerik.com/products/reporting.aspx" target="_blank">Telerik Reporting</a> solution. It was easy to do but the charting gave me some headaches. The main pain point for me was that it did not support Radius charts and there were no plans to add it. The other problem was with the way the reporting control (server side control) had to be used. Its as if they created it for regular ASP.NET and then hacked it for MVC. See <a href="http://www.telerik.com/community/code-library/reporting/general/using-telerik-web-reportviewer-in-asp-net-mvc-application.aspx" target="_blank">example code here</a>. </p>
<p><a href="http://aboutdev.files.wordpress.com/2012/01/image.png"><img style="background-image:none;border-bottom:0;border-left:0;padding-left:0;padding-right:0;display:inline;border-top:0;border-right:0;padding-top:0;" title="image" border="0" alt="image" src="http://aboutdev.files.wordpress.com/2012/01/image_thumb.png?w=644&#038;h=421" width="644" height="421"></a></p>
<h3>Aspose.Cells – Too Hot</h3>
<p>Then I tried <a href="http://www.aspose.com/categories/.net-components/aspose.cells-for-.net/default.aspx" target="_blank">Aspose.Cells</a> to generate an excel sheet and perform the necessary conversion to PDF. This tool was simple to implement but very tedious to get looking just right. I didn’t have a lot of time to spend on the reporting aspect and It felt like I was writing VBA. To be clear, Excel is inherently tedious to work on and Aspose.Cells is the best implementation of Excel I have ever seen. Not even Microsoft has a good implementation that just works (especially in a server environment). The main issues I ran into with Aspose.Cells was that indicators were buggy and would not work properly. The other issue was saving as PDF. It would save fine but the indicators and databars would not print in the PDF report. We use Aspose.Cells in other projects where we need to generate reports that are mostly excel files to allow for data manipulation. It works there and its awesome. However, for this project, it was just not right.&nbsp; </p>
<p>At this point we started looking at using HTML 5 to generate the charts and just spit the data out on the page. But then we had the issue of taking an HTML page and converting it to a PDF. There are some tools out there that will do it but its not something I wanted to do. </p>
<p><img alt="Product Diagram of Aspose.Cells for .NET" src="http://www.aspose.com/Aspose.Cells/Images/product-diagram-aspose.cells-for-.net.jpg" width="640" height="352"></p>
<h3>Report Builder 3.0 – Just Right</h3>
<p>I finally tried <a href="http://www.microsoft.com/download/en/details.aspx?DisplayLang=en&amp;id=6116" target="_blank">Report Builder 3.0</a>. The UI is not the easiest to work with when trying to do styling etc. but it got the job done in record time and the report exported to PDF nicely. It worked. Pleased with this result I was ready to use the <a href="http://msdn.microsoft.com/en-us/library/microsoft.reporting.winforms.localreport(v=vs.80).aspx" target="_blank">LocalReport</a> ability (‘Represents a report that is processed and rendered locally without connecting to a report server’) to render the report in the MVC Controller and stream the PDF file as a result of the Controller method. </p>
<h5>The problem is that Microsoft in its infinite wisdom has not enabled that functionality for reports created in Report Builder 3.0.</h5>
<p><a href="http://aboutdev.files.wordpress.com/2012/01/image1.png"><img style="background-image:none;border-bottom:0;border-left:0;padding-left:0;padding-right:0;display:inline;border-top:0;border-right:0;padding-top:0;margin:0;" title="image" border="0" alt="image" src="http://aboutdev.files.wordpress.com/2012/01/image_thumb1.png?w=237&#038;h=244" width="237" height="244"></a><a href="http://aboutdev.files.wordpress.com/2012/01/image2.png"><img style="background-image:none;border-bottom:0;border-left:0;padding-left:0;padding-right:0;display:inline;border-top:0;border-right:0;padding-top:0;margin:0;" title="image" border="0" alt="image" src="http://aboutdev.files.wordpress.com/2012/01/image_thumb2.png?w=237&#038;h=244" width="237" height="244"></a></p>
<p>Why in the world would such a useful functionality be crippled on purpose? There must be a workaround!</p>
<p><a href="http://stackoverflow.com/questions/5655307/report-builder-3-0-with-vs2010-error" target="_blank">Stackoveflow</a> was checked but did not help. Changing the report type by modifying the xml does not render it useable. Then I came across <a href="http://social.msdn.microsoft.com/Forums/en-HK/vsreportcontrols/thread/e609a329-58cd-4f30-b8d6-a912657d8eba" target="_blank">this link</a> which stated:</p>
<blockquote><p>The reports that are created with ReportBuilder 3.0 use the RDL 2010 schema but the ReportViewer in local mode can only process/render reports that use the 2005 or 2008 schema. If you publish the 2010 report to a report server and use the ReportViewer in remote mode you can render the 2010 RDL Report.</p>
</blockquote>
<p>So I had to find another way around this issue. I had to use a Report Server to host the report.</p>
<p>Then I could use the WebClient class to request the report via http. The URL I used was:</p>
<p>http://&lt;SERVER_NAME&gt;/ReportServer_SQLEXPRESS?%2fGAP%2f&lt;REPORT_NAME&gt;&amp;rs:Command=Render&amp;rs:Format=PDF&amp;rc:Toolbar=false&amp;rc:Parameters=false&amp;&lt;PARAM_1&gt;=&lt;VALUE&gt;</p>
<p>Notice that there are some things you have to replace in the URL above. Also note that ‘ReportServer_SQLEXPRESS’ is being used. This is because the instance is running off SQL Express and not the full blown SQL 2008 R2 which you should used in production. And that ‘Format=PDF’ will render the report as a PDF. </p>
<p><img src="http://farm4.staticflickr.com/3495/4055862405_fac83bc050_o.png" width="503" height="480"></p>
<p>&nbsp;</p>
<p>So, to conclude, Report Builder 3.0 was the easiest to use to build the report and generating the PDF from the report was also simple to accomplish. Report Builder supports many different styles of charts and data displays much like Excel. I’m now going to push Report Builder for all our reports considering the ease with which they can be modified and just how easy they are to use. I could put the data on the report and give it to the designer to prettify.</p>
<p>Also, in case you did not know this, <a href="http://www.microsoft.com/download/en/details.aspx?id=25174#additional-information" target="_blank">Microsoft SQL Server2008 R2 RTM &#8211; Express with Advanced</a> Services is a fully functioning SQL SERVER 2008 database with all the trimmings. </p>
<li>Same database engine as other versions of SQL Server. </li>
<li>Supports 10 GB of storage per database. </li>
<li>Backup and restore with ease. </li>
<li>Compatible with all editions of SQL Server and SQL Azure. </li>
<li>Designed to work with Visual Studio and ASP.NET. </li>
<li>Available with a graphical management tool. </li>
<li>Offers reporting capabilities, full-text search, and spatial support.</li>
<br /> Tagged: <a href='http://aboutdev.wordpress.com/tag/asp-net-mvc/'>ASP.NET MVC</a>, <a href='http://aboutdev.wordpress.com/tag/aspose/'>aspose</a>, <a href='http://aboutdev.wordpress.com/tag/aspose-cells/'>Aspose.Cells</a>, <a href='http://aboutdev.wordpress.com/tag/data-manipulation/'>data manipulation</a>, <a href='http://aboutdev.wordpress.com/tag/excel-sheet/'>excel sheet</a>, <a href='http://aboutdev.wordpress.com/tag/pdf-report/'>pdf report</a>, <a href='http://aboutdev.wordpress.com/tag/reporting/'>Reporting</a>, <a href='http://aboutdev.wordpress.com/tag/reporting-solution/'>reporting solution</a>, <a href='http://aboutdev.wordpress.com/tag/reports/'>Reports</a>, <a href='http://aboutdev.wordpress.com/tag/sql-server-2008-express-r2/'>Sql Server 2008 Express R2</a>, <a href='http://aboutdev.wordpress.com/tag/ssrs/'>SSRS</a>, <a href='http://aboutdev.wordpress.com/tag/telerik-reporting/'>Telerik.Reporting</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aboutdev.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aboutdev.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aboutdev.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aboutdev.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aboutdev.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aboutdev.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aboutdev.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aboutdev.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aboutdev.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aboutdev.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aboutdev.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aboutdev.wordpress.com/234/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aboutdev.wordpress.com/234/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aboutdev.wordpress.com/234/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=234&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aboutdev.wordpress.com/2012/01/07/reporting-in-asp-net-mvc-3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5854b7a26eeb1ca639abc8c78cd410de?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Sushant Bhatia</media:title>
		</media:content>

		<media:content url="http://aboutdev.files.wordpress.com/2012/01/image_thumb.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://www.aspose.com/Aspose.Cells/Images/product-diagram-aspose.cells-for-.net.jpg" medium="image">
			<media:title type="html">Product Diagram of Aspose.Cells for .NET</media:title>
		</media:content>

		<media:content url="http://aboutdev.files.wordpress.com/2012/01/image_thumb1.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://aboutdev.files.wordpress.com/2012/01/image_thumb2.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://farm4.staticflickr.com/3495/4055862405_fac83bc050_o.png" medium="image" />
	</item>
		<item>
		<title>Presentation Slides &#8211; An introduction to F#</title>
		<link>http://aboutdev.wordpress.com/2011/11/06/presentation-slides-an-introduction-to-f/</link>
		<comments>http://aboutdev.wordpress.com/2011/11/06/presentation-slides-an-introduction-to-f/#comments</comments>
		<pubDate>Sun, 06 Nov 2011 19:48:07 +0000</pubDate>
		<dc:creator>aboutdev</dc:creator>
				<category><![CDATA[.Net]]></category>
		<category><![CDATA[Desert Code Camp]]></category>
		<category><![CDATA[F#]]></category>
		<category><![CDATA[Presentation]]></category>
		<category><![CDATA[Slides]]></category>
		<category><![CDATA[Functional Programming]]></category>
		<category><![CDATA[Introduction]]></category>
		<category><![CDATA[PPTX]]></category>

		<guid isPermaLink="false">https://aboutdev.wordpress.com/2011/11/06/presentation-slides-an-introduction-to-f/</guid>
		<description><![CDATA[On Saturday 5th November 2011, I presented a talk on F# and Functional Programming at Desert Code Camp. It was my first time at DCC and I must admit I thoroughly enjoyed interacting with people who enjoy technology and learning new things like me.I got to meet some great attendees and speakers. Lets not forget [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=222&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>On Saturday 5th November 2011, I presented a talk on F# and Functional Programming at Desert Code Camp. It was my first time at DCC and I must admit I thoroughly enjoyed interacting with people who enjoy technology and learning new things like me.I got to meet some great attendees and speakers. Lets not forget the immense time and effort given by the volunteers and organizers of Desert Code Camp as well. </p>
<p>I think the best part of my speech was getting people excited about F# and hearing the wows and praises for F# and my presentation after. You guys rock!</p>
<p>Also, congratulations to the two F# book giveaway winners. </p>
<p>I wanted to post the presentation slides for anyone who wanted it. I have tried to add the sample code to the presentation slides as well. Feel free to contact me if you have any questions.</p>
<p><a href="http://aboutdev.files.wordpress.com/2011/11/an-introduction-to-fsharp.pptx">An Introduction to F# – Sushant Bhatia (.PPTX)</a><br /><a href="http://aboutdev.files.wordpress.com/2011/11/an-introduction-to-fsharp.pdf">An Introduction to F# &#8211; Sushant Bhatia (.PDF)</a></p>
<p><b>Edit:</b> The presentation is not looking nice in Google Docs. I will try and get a PDF of the entire presentation up tonight. It should also contain the notes that I put so that you can try out the code.</p>
<br /> Tagged: <a href='http://aboutdev.wordpress.com/tag/net/'>.Net</a>, <a href='http://aboutdev.wordpress.com/tag/f/'>F#</a>, <a href='http://aboutdev.wordpress.com/tag/functional-programming/'>Functional Programming</a>, <a href='http://aboutdev.wordpress.com/tag/introduction/'>Introduction</a>, <a href='http://aboutdev.wordpress.com/tag/pptx/'>PPTX</a>, <a href='http://aboutdev.wordpress.com/tag/presentation/'>Presentation</a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aboutdev.wordpress.com/222/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aboutdev.wordpress.com/222/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aboutdev.wordpress.com/222/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aboutdev.wordpress.com/222/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aboutdev.wordpress.com/222/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aboutdev.wordpress.com/222/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aboutdev.wordpress.com/222/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aboutdev.wordpress.com/222/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aboutdev.wordpress.com/222/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aboutdev.wordpress.com/222/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aboutdev.wordpress.com/222/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aboutdev.wordpress.com/222/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aboutdev.wordpress.com/222/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aboutdev.wordpress.com/222/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=222&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aboutdev.wordpress.com/2011/11/06/presentation-slides-an-introduction-to-f/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5854b7a26eeb1ca639abc8c78cd410de?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Sushant Bhatia</media:title>
		</media:content>
	</item>
		<item>
		<title>ASP.NET MVC Caching Dynamically generated JavaScript</title>
		<link>http://aboutdev.wordpress.com/2011/09/03/asp-net-mvc-caching-dynamically-generated-javascript/</link>
		<comments>http://aboutdev.wordpress.com/2011/09/03/asp-net-mvc-caching-dynamically-generated-javascript/#comments</comments>
		<pubDate>Sat, 03 Sep 2011 22:53:07 +0000</pubDate>
		<dc:creator>aboutdev</dc:creator>
				<category><![CDATA[.Net]]></category>
		<category><![CDATA[ASP.NET MVC]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://aboutdev.wordpress.com/?p=203</guid>
		<description><![CDATA[One of the things you may occasionally have to do while using JavaScript is show dialogs and react to your users inputs. These could be in the form of alert boxes that are built into the language, growls, loading panels or even just a message added to an element. (Side note: The jQuery BlockUI plugin [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=203&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>One of the things you may occasionally have to do while using JavaScript is show dialogs and react to your users inputs. These could be in the form of alert boxes that are built into the language, growls, loading panels or even just a message added to an element. (Side note: The <a href="http://jquery.malsup.com/block/">jQuery BlockUI plugin</a> seems very promising).</p>
<p>The discerning user would realize that a website that targets a global audience has to be able to localize, globalize and internationalize to their language and a good starting place is to look at <a href="http://www.hanselman.com/">Scott Hanselman</a>’s post on this very topic.</p>
<h4><a href="http://www.hanselman.com/blog/GlobalizationInternationalizationAndLocalizationInASPNETMVC3JavaScriptAndJQueryPart1.aspx">Globalization, Internationalization and Localization in ASP.NET MVC 3, JavaScript and jQuery &#8211; Part 1</a></h4>
<p>One hacky way to get localized strings in JavaScript when they are in separate files is to have a localized file with all the localized text in it. Then based on the users language preference, load up the appropriate file and use the strings from there. But what if the strings come from a database and you need to generate this at runtime to be able to handle change without deployment again. Well here is how you can do it.</p>
<p>Read the article on <a href="http://elegantcode.com/2009/11/07/asp-net-mvc-javascriptview/">JavaScriptView</a> by elegantcode for more details. However, to summarize here are their steps:</p>
<ol>
<li>Create a controller method that return the view as a JavaScriptFileResult preferably in your home controller.</li>
<li>Create a view that contains the localized strings in an array. I used a helper method to get the contents from the database dynamically. You may wish to add this to your home controllers view folder as well.</li>
<li>Add a script block in the shared layout’s header to the URL for the JavaScript file.</li>
</ol>
<p>All well and good. The file will now come down with the rest of the content as a JavaScript file and you can use the array of localized strings in your other JavaScript code.</p>
<p>BUT! The one problem you may notice is that the JavaScript source file is retrieved every time a request is made to the server. Thus you will need to cache it. To do so, we just need to add the OutputCacheAttribute onto the controller method that returns the JavaScript file.</p>
<p><pre class="brush: csharp;">[OutputCache(Location = System.Web.UI.OutputCacheLocation.ServerAndClient, Duration = 900, VaryByParam = &quot;none&quot;)]</pre></p>
<p>The only problem here is that the VaryByParam is set to none. That’s because we don’t have any parameters being passed into the method. This is a problem because two different requests can come in for varying locales and now the second one may get the cached value of the first one. Therefore, we need to pass in the locale as a parameter and then VaryByParam on that field. This will ensure that every locale has the file cached and changes made can go out without requiring a deployment of files to the server.</p>
<p><a href="http://aboutdev.files.wordpress.com/2011/09/jsconstants.jpg"><img style="background-image:none;padding-left:0;padding-right:0;display:inline;padding-top:0;border:0;" title="JsConstants" src="http://aboutdev.files.wordpress.com/2011/09/jsconstants_thumb.jpg?w=900&#038;h=112" alt="JsConstants" width="900" height="112" border="0" /></a></p>
<p>The script block in the _Layouts.cshtml file.</p>
<p><pre class="brush: csharp;">&lt;script src=&quot;@Url.Content(&quot;~/Home/JsConstants?lcid=&quot; + System.Threading.Thread.CurrentThread.CurrentCulture.LCID)&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;</pre></p>
<p>But of course, who wants to keep sending these Id’s over all the time for all our script files. So, the easiest way to do this would be to create an identifier that can be used to check language automatically. And then we can write, “lang” in the VaryByParam attribute option and remove the lcid parameter from JsConstants.</p>
<p><pre class="brush: csharp;">[OutputCache(Location = System.Web.UI.OutputCacheLocation.ServerAndClient, Duration = 900, VaryByParam = &quot;lang&quot;)]</pre></p>
<p>The code to make this work is as follows. [Sorry but I’m not quite sure where I found this gem from]</p>
<p><pre class="brush: csharp;">public override string GetVaryByCustomString(HttpContext context, string value)
{
	if (value.Equals(&quot;lang&quot;))
	{
		return Thread.CurrentThread.CurrentUICulture.Name;
	}
	return base.GetVaryByCustomString(context,value);
}</pre></p>
<p><a href="http://aboutdev.files.wordpress.com/2011/09/fidllerjsconstants.jpg"><img style="background-image:none;padding-left:0;padding-right:0;display:inline;padding-top:0;border:0;" title="fidllerJsConstants" src="http://aboutdev.files.wordpress.com/2011/09/fidllerjsconstants_thumb.jpg?w=869&#038;h=158" alt="fidllerJsConstants" width="869" height="158" border="0" /></a></p>
<p>As you can see from the image above, the first request for the JsConstants file containing the JavaScript returned 918bytes of data. Whereas, the subsequent call returned 0 bytes. The raw message returned reads as follows:</p>
<blockquote><p>HTTP/1.1 304 Not Modified<br />
Cache-Control: private, max-age=863<br />
Expires: Sat, 03 Sep 2011 22:57:26 GMT<br />
Last-Modified: Sat, 03 Sep 2011 22:42:26 GMT<br />
Vary: *<br />
Server: Microsoft-IIS/7.5<br />
X-Powered-By: ASP.NET<br />
Date: Sat, 03 Sep 2011 22:43:03 GMT</p></blockquote>
<p>This indicates that we are able to cache the contents of the JavaScript file that was being generated dynamically and it will be refreshed after the Duration we set (900).</p>
<p>Happy Coding.</p>
<p><a href="http://www.dotnetkicks.com/kick/?url=http%3a%2f%2faboutdev.wordpress.com%2f2011%2f09%2f03%2fasp-net-mvc-caching-dynamically-generated-javascript%2f"><img src="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%253a%252f%252faboutdev.wordpress.com%252f2011%252f09%252f03%252fasp-net-mvc-caching-dynamically-generated-javascript%252f" border="0" alt="kick it on DotNetKicks.com" /></a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aboutdev.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aboutdev.wordpress.com/203/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aboutdev.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aboutdev.wordpress.com/203/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aboutdev.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aboutdev.wordpress.com/203/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aboutdev.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aboutdev.wordpress.com/203/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aboutdev.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aboutdev.wordpress.com/203/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aboutdev.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aboutdev.wordpress.com/203/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aboutdev.wordpress.com/203/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aboutdev.wordpress.com/203/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=203&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aboutdev.wordpress.com/2011/09/03/asp-net-mvc-caching-dynamically-generated-javascript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5854b7a26eeb1ca639abc8c78cd410de?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Sushant Bhatia</media:title>
		</media:content>

		<media:content url="http://aboutdev.files.wordpress.com/2011/09/jsconstants_thumb.jpg" medium="image">
			<media:title type="html">JsConstants</media:title>
		</media:content>

		<media:content url="http://aboutdev.files.wordpress.com/2011/09/fidllerjsconstants_thumb.jpg" medium="image">
			<media:title type="html">fidllerJsConstants</media:title>
		</media:content>

		<media:content url="http://www.dotnetkicks.com/Services/Images/KickItImageGenerator.ashx?url=http%253a%252f%252faboutdev.wordpress.com%252f2011%252f09%252f03%252fasp-net-mvc-caching-dynamically-generated-javascript%252f" medium="image">
			<media:title type="html">kick it on DotNetKicks.com</media:title>
		</media:content>
	</item>
		<item>
		<title>Generating Object Classes from XML</title>
		<link>http://aboutdev.wordpress.com/2010/06/02/generating-object-classes-from-xml/</link>
		<comments>http://aboutdev.wordpress.com/2010/06/02/generating-object-classes-from-xml/#comments</comments>
		<pubDate>Wed, 02 Jun 2010 20:28:16 +0000</pubDate>
		<dc:creator>aboutdev</dc:creator>
				<category><![CDATA[.Net]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[XSD]]></category>

		<guid isPermaLink="false">http://aboutdev.wordpress.com/?p=195</guid>
		<description><![CDATA[I ran into a need for generating classes that xml data can be deserialized into. I generally write this myself but today, I needed to do it faster. Along came the Visual Studio XSD tool. Open a VS command prompt. Type &#8216;xsd file.xml&#8217;. This will generate a file.xsd. Then type, &#8216;xsd file.xsd /classes&#8217;. This will [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=195&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I ran into a need for generating classes that xml data can be deserialized into. I generally write this myself but today, I needed to do it faster. </p>
<p>Along came the Visual Studio XSD tool.</p>
<p>Open a VS command prompt.<br />
Type &#8216;xsd file.xml&#8217;. This will generate a file.xsd.<br />
Then type, &#8216;xsd file.xsd /classes&#8217;. This will generate a file.cs file that you can then use to deserialize into.</p>
<p>For more details, check out this cool link <a href="http://sharpertutorials.com/using-xsd-tool-to-generate-classes-from-xml/">http://sharpertutorials.com/using-xsd-tool-to-generate-classes-from-xml/</a></p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aboutdev.wordpress.com/195/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aboutdev.wordpress.com/195/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aboutdev.wordpress.com/195/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aboutdev.wordpress.com/195/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aboutdev.wordpress.com/195/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aboutdev.wordpress.com/195/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aboutdev.wordpress.com/195/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aboutdev.wordpress.com/195/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aboutdev.wordpress.com/195/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aboutdev.wordpress.com/195/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aboutdev.wordpress.com/195/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aboutdev.wordpress.com/195/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aboutdev.wordpress.com/195/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aboutdev.wordpress.com/195/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=195&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aboutdev.wordpress.com/2010/06/02/generating-object-classes-from-xml/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5854b7a26eeb1ca639abc8c78cd410de?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Sushant Bhatia</media:title>
		</media:content>
	</item>
		<item>
		<title>SharePoint 2010 Foundation Forms Based Authentication</title>
		<link>http://aboutdev.wordpress.com/2010/05/29/sharepoint-2010-foundation-forms-based-authentication/</link>
		<comments>http://aboutdev.wordpress.com/2010/05/29/sharepoint-2010-foundation-forms-based-authentication/#comments</comments>
		<pubDate>Sat, 29 May 2010 23:28:22 +0000</pubDate>
		<dc:creator>aboutdev</dc:creator>
				<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[Tips]]></category>

		<guid isPermaLink="false">http://aboutdev.wordpress.com/?p=193</guid>
		<description><![CDATA[While setting up Forms based authentication I ran into this error: The server was unable to process the request due to an internal error. For more information about the error, either turn on IncludeExceptionDetailInFaults (either from ServiceBehaviorAttribute or from the configuration behavior) on the server in order to send the exception information back to the [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=193&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>While setting up Forms based authentication I ran into this error:</p>
<blockquote><p>The server was unable to process the request due to an internal error.  For more information about the error, either turn on IncludeExceptionDetailInFaults (either from ServiceBehaviorAttribute or from the  configuration behavior) on the server in order to send the exception information back to the client, or turn on tracing as per the Microsoft .NET Framework 3.0 SDK documentation and inspect the server trace logs.</p></blockquote>
<p>Looking around I came across the following: <a href="http://msdn.microsoft.com/en-us/library/ff649234.aspx">http://msdn.microsoft.com/en-us/library/ff649234.aspx</a></p>
<p>Go to your server&#8217;s IIS and open Sites | SharePoint Web Services | SercurityTokenServiceApplication.<br />
Open that site&#8217;s web.config and add  above the serviceMetadata element in the Behavior list.</p>
<p>Now when you login, you should get a more useful error. In my case it was:</p>
<blockquote><p>You must specify a non-autogenerated machine key to store passwords in the encrypted format. Either specify a different passwordFormat, or change the machineKey configuration to use a non-autogenerated decryption key. </p></blockquote>
<p>So I added new Machine keys to Admin, 80 and Web Services sites. Then it worked.</p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aboutdev.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aboutdev.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aboutdev.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aboutdev.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aboutdev.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aboutdev.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aboutdev.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aboutdev.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aboutdev.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aboutdev.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aboutdev.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aboutdev.wordpress.com/193/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aboutdev.wordpress.com/193/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aboutdev.wordpress.com/193/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=193&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aboutdev.wordpress.com/2010/05/29/sharepoint-2010-foundation-forms-based-authentication/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5854b7a26eeb1ca639abc8c78cd410de?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Sushant Bhatia</media:title>
		</media:content>
	</item>
		<item>
		<title>SharePoint Foundation 2010 Database</title>
		<link>http://aboutdev.wordpress.com/2010/05/29/sharepoint-foundation-2010-database/</link>
		<comments>http://aboutdev.wordpress.com/2010/05/29/sharepoint-foundation-2010-database/#comments</comments>
		<pubDate>Sat, 29 May 2010 18:46:29 +0000</pubDate>
		<dc:creator>aboutdev</dc:creator>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[Sharepoint]]></category>
		<category><![CDATA[SharePoint 2010]]></category>
		<category><![CDATA[SSMS]]></category>
		<category><![CDATA[Tips]]></category>

		<guid isPermaLink="false">http://aboutdev.wordpress.com/?p=191</guid>
		<description><![CDATA[To connect to the SharePoint Foundation 2010 database through SQL Server Management Studio (SSMS), you need to use &#8216;SERVERNAME\Sharepoint&#8217; if you have used the default express instance install. Alternatively, you can go to your Site Administration page, click on &#8216;Manage content databases&#8217; under Application Management and click on the database name (WSS_Content). When the page [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=191&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>To connect to the SharePoint Foundation 2010 database through SQL Server Management Studio (SSMS), you need to use &#8216;SERVERNAME\Sharepoint&#8217; if you have used the default express instance install. Alternatively, you can go to your Site Administration page, click on &#8216;Manage content databases&#8217; under Application Management and click on the database name (WSS_Content). When the page loads, you should see the Database server listed. </p>
<p>For more info, see <a href="http://weblogs.asp.net/jevgeni/archive/2010/01/14/connecting-to-sharepoint-foundation-2010-internal-database.aspx">http://weblogs.asp.net/jevgeni/archive/2010/01/14/connecting-to-sharepoint-foundation-2010-internal-database.aspx</a> </p>
<br />  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aboutdev.wordpress.com/191/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aboutdev.wordpress.com/191/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aboutdev.wordpress.com/191/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aboutdev.wordpress.com/191/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aboutdev.wordpress.com/191/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aboutdev.wordpress.com/191/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aboutdev.wordpress.com/191/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aboutdev.wordpress.com/191/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aboutdev.wordpress.com/191/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aboutdev.wordpress.com/191/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aboutdev.wordpress.com/191/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aboutdev.wordpress.com/191/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aboutdev.wordpress.com/191/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aboutdev.wordpress.com/191/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=191&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aboutdev.wordpress.com/2010/05/29/sharepoint-foundation-2010-database/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5854b7a26eeb1ca639abc8c78cd410de?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Sushant Bhatia</media:title>
		</media:content>
	</item>
		<item>
		<title>Poor Man&#8217;s Validation</title>
		<link>http://aboutdev.wordpress.com/2009/12/20/poor-mans-validation/</link>
		<comments>http://aboutdev.wordpress.com/2009/12/20/poor-mans-validation/#comments</comments>
		<pubDate>Sun, 20 Dec 2009 19:40:37 +0000</pubDate>
		<dc:creator>aboutdev</dc:creator>
				<category><![CDATA[.Net]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[class validation]]></category>
		<category><![CDATA[code example]]></category>
		<category><![CDATA[DataAnnotations]]></category>
		<category><![CDATA[easy]]></category>
		<category><![CDATA[ValidationContext]]></category>

		<guid isPermaLink="false">http://aboutdev.wordpress.com/2009/12/20/poor-mans-validation/</guid>
		<description><![CDATA[Does your validation drive you crazy? Are you writing too much validator code? Have you lost your sense of humor? Well, not to worry because now, there’s a little hack to make Validation easier. Lets say I had a Company class as defined by: Now, say I wanted to add validation to this so that [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=183&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Does your validation drive you crazy? Are you writing too much validator code? Have you lost your sense of humor?</p>
<p><a href="http://aboutdev.files.wordpress.com/2009/12/image4.png"><img style="display:block;float:none;margin-left:auto;margin-right:auto;border:0;" title="image" src="http://aboutdev.files.wordpress.com/2009/12/image_thumb4.png?w=244&#038;h=191" border="0" alt="image" width="244" height="191" /></a></p>
<p>Well, not to worry because now, there’s a little hack to make Validation easier.</p>
<p>Lets say I had a Company class as defined by:</p>
<p><pre class="brush: csharp;">
    public class Company
    {
        public string Title
        {
            get;
            set;
        }
    }
</pre></p>
<p>Now, say I wanted to add validation to this so that the</p>
<ul>
<li>Title is Required</li>
<li>Title must be up to 10 characters</li>
<li>Title can only be Alpha and space</li>
</ul>
<p>In order to achieve this quickly, you can add the System.ComponentModel.DataAnnotations.dll file to your project (Make sure its the latest one from Codeplex). Then update your class definition as follows:</p>
<p><pre class="brush: csharp;">
    public class Company
    {
        [Required]
        [StringLength(10)]
        [RegularExpression(&quot;[A-Za-z\\s]+&quot;)]
        public string Title
        {
            get;
            set;
        }
    }
</pre></p>
<p>Now you can run the following code to validate your class instance as follows:</p>
<p><pre class="brush: csharp;">
    //
    // Test instantiation
    ValidationContext vc = null;
    bool bCanCreate = false;
    List&lt;ValidationResult&gt; validationResults = new List&lt;ValidationResult&gt;();
    Company _company = new Company();

    //
    // Test 1 : Acceptable test undeo 10 characters and alpha.
    _company.Title = &quot;The Title&quot;;
    vc = new ValidationContext(_company, null, null);
    bCanCreate = Validator.TryValidateObject(_company, vc, validationResults, true);
    Debug.Assert(bCanCreate == true);

    //
    // Test 2: Failure test 
    _company.Title = &quot;32 Pan&quot;;
    vc = new ValidationContext(_company, null, null);
    bCanCreate = Validator.TryValidateObject(_company, vc, validationResults, true);
    Debug.Assert(bCanCreate == false);

    //
    // Test 3: Failure test 
    _company.Title = &quot;&quot;;
    vc = new ValidationContext(_company, null, null);
    bCanCreate = Validator.TryValidateObject(_company, vc, validationResults, true);
    Debug.Assert(bCanCreate == false);

    //
    // Test 4: Failure test 
    _company.Title = &quot;abcdefghijklm nopqrstuvwxyz&quot;;
    vc = new ValidationContext(_company, null, null);
    bCanCreate = Validator.TryValidateObject(_company, vc, validationResults, true);
    Debug.Assert(bCanCreate == false);
</pre></p>
<p>So now you’re bound to be validator approved.</p>
<p><a href="http://aboutdev.files.wordpress.com/2009/12/image6.png"><img style="display:block;float:none;margin-left:auto;margin-right:auto;border:0;" title="image" src="http://aboutdev.files.wordpress.com/2009/12/image_thumb6.png?w=219&#038;h=244" border="0" alt="image" width="219" height="244" /></a></p>
<br /> Tagged: C#, class validation, code example, DataAnnotations, easy, ValidationContext <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aboutdev.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aboutdev.wordpress.com/183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aboutdev.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aboutdev.wordpress.com/183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aboutdev.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aboutdev.wordpress.com/183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aboutdev.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aboutdev.wordpress.com/183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aboutdev.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aboutdev.wordpress.com/183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aboutdev.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aboutdev.wordpress.com/183/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aboutdev.wordpress.com/183/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aboutdev.wordpress.com/183/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=183&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aboutdev.wordpress.com/2009/12/20/poor-mans-validation/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5854b7a26eeb1ca639abc8c78cd410de?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Sushant Bhatia</media:title>
		</media:content>

		<media:content url="http://aboutdev.files.wordpress.com/2009/12/image_thumb4.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://aboutdev.files.wordpress.com/2009/12/image_thumb6.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>Excelcification: Brain Teaser Code</title>
		<link>http://aboutdev.wordpress.com/2009/12/19/excelcification-brain-teaser-code/</link>
		<comments>http://aboutdev.wordpress.com/2009/12/19/excelcification-brain-teaser-code/#comments</comments>
		<pubDate>Sat, 19 Dec 2009 18:27:06 +0000</pubDate>
		<dc:creator>aboutdev</dc:creator>
				<category><![CDATA[.Net]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[base 26]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[convert excel column to integer]]></category>
		<category><![CDATA[Excelcification]]></category>
		<category><![CDATA[Hexavigesimal]]></category>

		<guid isPermaLink="false">http://aboutdev.wordpress.com/2009/12/19/excelcification-brain-teaser-code/</guid>
		<description><![CDATA[Problem: Someone at work recently asked me how you would go about converting excel header rows into integers. In the image below, you see each column and its corresponding integer value. &#160; Thus, A = 0, B = 1, C = 2 and so on. Since I have no better word to describe this process, [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=170&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong>Problem:</strong> Someone at work recently asked me how you would go about converting excel header rows into integers. In the image below, you see each column and its corresponding integer value.</p>
<p>&#160;<a href="http://aboutdev.files.wordpress.com/2009/12/image2.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="image" border="0" alt="image" src="http://aboutdev.files.wordpress.com/2009/12/image_thumb2.png?w=644&#038;h=78" width="644" height="78" /></a> </p>
<p>Thus, <strong>A = 0, B = 1, C = 2 </strong>and so on. Since I have no better word to describe this process, I’m going to call it Excelcification. </p>
<p><strong>Def: Excelcification</strong>. The act of converting a alpha column into its numeric representation.</p>
<p>However, Excel cells go from A to Z and then become AA, AB, AC etc. So if <strong>Z = 25, AA = 26, AB = 27 </strong>and so on. </p>
<p>Your mission is to create a method that takes a string that corresponds to the excel column (don’t have to worry about spaces etc for now) and change that to its integer value.</p>
</p>
<p>&#160;</p>
<p>In case you didn’t know, the largest column in Excel 2010 that I could see was <strong>XFD</strong>.</p>
<p><a href="http://aboutdev.files.wordpress.com/2009/12/image3.png"><img style="border-bottom:0;border-left:0;display:inline;border-top:0;border-right:0;" title="image" border="0" alt="image" src="http://aboutdev.files.wordpress.com/2009/12/image_thumb3.png?w=644&#038;h=72" width="644" height="72" /></a> </p>
<p>So what is the Excelcification of “XFD”?</p>
<p>&#160;</p>
<p align="center">[Jeopardy theme music plays…]</p>
<p align="center">&#160;</p>
<p align="center">[Some time later…]</p>
<p align="center">&#160;</p>
<p align="center">[Some more time later…]</p>
<p align="center">&#160;</p>
<p align="center">Are you done? How did you do it?</p>
<p>&#160;</p>
<p>My process was to recognize that this is going to be Base 26 arithmetic, also know as <a href="http://en.wikipedia.org/wiki/Hexavigesimal">Hexavigesimal</a>. But you didn’t need to know that. If you know how base 2 (binary) works, you can extrapolate it to work for base 26.&#160; So how does base 2 work. If you remember your truth tables from high school/college, you would know that in binary:</p>
<blockquote><p>01 = 2^0</p>
<p>10 = 2^1</p>
<p>11 = 2^1 + 2^0</p>
</blockquote>
<p>&#160;</p>
<p>Now extrapolate this for base 26 and realize that in binary, your digits are only 0 and 1 whereas in hexavigesimal, your digits are 0 through 25. (See the link there to A through Z).</p>
<p>Thus,</p>
<blockquote><p>A = (26^0) * Numeric_Value(A) </p>
<p>B = (26^0) * Numeric_Value(B)</p>
<p>etc.</p>
</blockquote>
<p>&#160;</p>
<p>So if you create a method for this your code should be:</p>
<p>  <pre class="brush: csharp;">         public static class ExtensionMethods
    {
        /// &lt;summary&gt;
        /// Converts a string into its hexavigesical (base 26) representation.
        /// &lt;/summary&gt;
        /// &lt;param name=&quot;sxCol&quot;&gt;Input string of letters.&lt;/param&gt;
        /// &lt;returns&gt;-1 if input is null or empty, base 26 integer representation of input otherwise.&lt;/returns&gt;
        public static int Excelcify(this string sxCol)
        {
            int result = -1;
            sxCol = sxCol.ToUpper();

            if (string.IsNullOrEmpty(sxCol))
                return result;


            for (int i = sxCol.Length; i &gt; 0; i--)
            {
                char _c = sxCol[i-1];
                //
                // Function =&gt;  (26 ^ reversed_char_index) * char_value
                //          A = 1 ------ Z = 26 ------ AA = 27 ------ AZ = 54
                // 64 because there 'A' starts at index 65 and we want to give 'A' the value 1.
                result += Math.Pow(26, sxCol.Length - i).ToSafeInt() *  (_c.ToSafeInt() - 64);
            }

            return result;
        }
    } </pre>
<p>And you would call your code as such:</p>
<p>  <pre class="brush: csharp;"> int iResult = “A”.Excelcify();
Debug.Assert(res == 0);
iResult = &quot;Z&quot;.Excelcify();
Debug.Assert(res == 25);
iResult = &quot;AA&quot;.Excelcify();
Debug.Assert(res == 26);
</pre>
<p>&#160;</p>
<h4>Thus “AAA” = 702, and “XFD” = 16383.</h4>
<p>That is exactly 2^14 cells for those binary folk!</p>
<br /> Tagged: base 26, C#, code, convert excel column to integer, Excelcification, Hexavigesimal <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aboutdev.wordpress.com/170/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aboutdev.wordpress.com/170/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aboutdev.wordpress.com/170/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aboutdev.wordpress.com/170/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aboutdev.wordpress.com/170/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aboutdev.wordpress.com/170/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aboutdev.wordpress.com/170/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aboutdev.wordpress.com/170/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aboutdev.wordpress.com/170/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aboutdev.wordpress.com/170/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aboutdev.wordpress.com/170/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aboutdev.wordpress.com/170/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aboutdev.wordpress.com/170/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aboutdev.wordpress.com/170/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=170&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aboutdev.wordpress.com/2009/12/19/excelcification-brain-teaser-code/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5854b7a26eeb1ca639abc8c78cd410de?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Sushant Bhatia</media:title>
		</media:content>

		<media:content url="http://aboutdev.files.wordpress.com/2009/12/image_thumb2.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>

		<media:content url="http://aboutdev.files.wordpress.com/2009/12/image_thumb3.png" medium="image">
			<media:title type="html">image</media:title>
		</media:content>
	</item>
		<item>
		<title>Paths in ASP.NET</title>
		<link>http://aboutdev.wordpress.com/2009/12/19/paths-in-asp-net/</link>
		<comments>http://aboutdev.wordpress.com/2009/12/19/paths-in-asp-net/#comments</comments>
		<pubDate>Sat, 19 Dec 2009 17:26:21 +0000</pubDate>
		<dc:creator>aboutdev</dc:creator>
				<category><![CDATA[.Net]]></category>
		<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[Absolute Path]]></category>
		<category><![CDATA[Fix Path Issue]]></category>
		<category><![CDATA[Relative Path]]></category>
		<category><![CDATA[ResolveClientUrl]]></category>

		<guid isPermaLink="false">http://aboutdev.wordpress.com/2009/12/19/paths-in-asp-net/</guid>
		<description><![CDATA[I ran into something interesting I though I’d share. Problem: Paths used for developing ASP.NET applications can be a pain. Relative vs. Absolute. Server Side vs Client Side. Sometimes using paths such as “../../images/xyz.jpg” is not an option if controls can be used from different locations. Another problem is with using “/ESConsole/images/xyz.jpg” paths. Solution: In [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=157&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I ran into something interesting I though I’d share.</p>
<p><strong>Problem:</strong> Paths used for developing ASP.NET applications can be a pain. Relative vs. Absolute. Server Side vs Client Side. Sometimes using paths such as “../../images/xyz.jpg” is not an option if controls can be used from different locations. Another problem is with using “/ESConsole/images/xyz.jpg” paths.</p>
<p><strong>Solution:</strong> In essence you have to use ResolveClientUrl() in order to get it to work.</p>
<p><pre class="brush: xml;">
&lt;img border=&quot;0&quot; src=&quot;&lt;%= ResolveClientUrl(&quot;~/images/es-logo.jpg&quot;) %&gt;&quot; alt=&quot;ICC ES Logo&quot; /&gt;
</pre></p>
<p>The System.Web.UI.Control defines the method as</p>
<p><pre class="brush: csharp;">
//
 // Summary:
 //     Gets a URL that can be used by the browser.
 //
 // Parameters:
 //   relativeUrl:
 //     A URL relative to the current page.
 //
 // Returns:
 //     A fully qualified URL to the specified resource suitable for use on the browser.
 //
 // Exceptions:
 //   System.ArgumentNullException:
 //     relativeUrl is null.
 public string ResolveClientUrl(string relativeUrl);
</pre></p>
<p><strong>Note:</strong> If you are going to use this in a header, and specifically for scripts, you must place them in a ASP.NET PlaceHolder control as such.</p>
<p><pre class="brush: xml;">
&lt;head runat=&quot;server&quot;&gt;

    &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=iso-8859-1&quot; /&gt;
    &lt;title&gt;Your Project Title&lt;/title&gt;

    &lt;!-- You do not need to use ResolveClientUrl with Link elements --!&gt;
    &lt;link href=&quot;css/master.css&quot; rel=&quot;stylesheet&quot; type=&quot;text/css&quot; /&gt;
    &lt;link href=&quot;Stylesheets/jquery-ui-1.7.2.custom.css&quot; rel=&quot;stylesheet&quot; type=&quot;text/css&quot; /&gt;

    &lt;asp:PlaceHolder runat=&quot;server&quot; id=&quot;mainScripts&quot;&gt;
        &lt;script type=&quot;text/javascript&quot; src=&quot;&lt;%= ResolveClientUrl (&quot;~/js/jQuery-1.3.2.min.js&quot;) %&gt;&quot;&gt;&lt;/script&gt;
        &lt;script type=&quot;text/javascript&quot; src=&quot;&lt;%= ResolveClientUrl (&quot;~/js/jquery.tools.min.js&quot;) %&gt;&quot;&gt;&lt;/script&gt;
        &lt;script type=&quot;text/javascript&quot; src=&quot;&lt;%= ResolveClientUrl (&quot;~/js/jQuery-jTemplates.min.js&quot;) %&gt;&quot;&gt;&lt;/script&gt;
    &lt;/asp:PlaceHolder&gt;

&lt;/head&gt;
</pre></p>
<p>You can also use it with JavaScript</p>
<p><pre class="brush: jscript;">
&lt;script type=&quot;text/javascript&quot; language=&quot;javascript&quot;&gt;

        function FilterTitle() {
            $(&quot;.findbox_grid&quot;).eq(0).tableFilter({
                imagePath: '&lt;%= ResolveClientUrl (&quot;~/js/filter/&quot;) %&gt;',
                showDebug: false
        });
        }

&lt;/script&gt;
</pre></p>
<p>In conclusion, if you are going to be deploying your application from DEV to QA to PRODUCTION, you don&#8217;t want to be worrying about whether your references such as scripts or css or images are going to work or not. (If you use css, note that all image reference in CSS are relative to the location of the CSS file itself.)</p>
<br /> Tagged: Absolute Path, ASP.NET, Fix Path Issue, Relative Path, ResolveClientUrl <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/aboutdev.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/aboutdev.wordpress.com/157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/aboutdev.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/aboutdev.wordpress.com/157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/aboutdev.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/aboutdev.wordpress.com/157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/aboutdev.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/aboutdev.wordpress.com/157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/aboutdev.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/aboutdev.wordpress.com/157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/aboutdev.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/aboutdev.wordpress.com/157/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/aboutdev.wordpress.com/157/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/aboutdev.wordpress.com/157/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=aboutdev.wordpress.com&amp;blog=2848840&amp;post=157&amp;subd=aboutdev&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://aboutdev.wordpress.com/2009/12/19/paths-in-asp-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="http://1.gravatar.com/avatar/5854b7a26eeb1ca639abc8c78cd410de?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">Sushant Bhatia</media:title>
		</media:content>
	</item>
	</channel>
</rss>
