<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feed.andreas-kraus.net/~d/styles/itemcontent.css"?><rss 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:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Andreas Kraus: C#, ASP.NET, Silverlight</title>
	
	<link>http://www.andreas-kraus.net/blog</link>
	<description>News, Tutorials and Codesnippets about C#, ASP.NET- Silverlight</description>
	<lastBuildDate>Tue, 26 Jan 2010 18:00:35 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feed.andreas-kraus.net/netseo" /><feedburner:info uri="netseo" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com" /><xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" /><item>
		<title>Unrecognized attribute ‘targetFramework’</title>
		<link>http://feed.andreas-kraus.net/~r/netseo/~3/wLU96MT3AJM/</link>
		<comments>http://www.andreas-kraus.net/blog/unrecognized-attribute-targetframework/#comments</comments>
		<pubDate>Tue, 26 Jan 2010 18:00:35 +0000</pubDate>
		<dc:creator>andreas.kraus</dc:creator>
				<category><![CDATA[ASP.NET]]></category>

		<guid isPermaLink="false">http://www.andreas-kraus.net/blog/?p=255</guid>
		<description><![CDATA[I&#8217;m currently playing around with ASP.NET 4.0 Beta 2. There are lots of bugs to fight with, but I&#8217;m looking forward to RC1, which should be available soon. It&#8217;s coming with a GoLive Licence, so when you put your ASP.NET v4.0 bits on IIS7, don&#8217;t forget to set your Application Pool to .NET Framework 4.x. [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m currently playing around with ASP.NET 4.0 Beta 2. There are lots of bugs to fight with, but I&#8217;m looking forward to RC1, which should be available soon. It&#8217;s coming with a GoLive Licence, so when you put your ASP.NET v4.0 bits on IIS7, don&#8217;t forget to set your Application Pool to .NET Framework 4.x. Otherwise you will encounter the mentioned error:</p>
<blockquote><p>Unrecognized attribute &#8216;targetFramework&#8217;. Note that attribute names are case-sensitive.</p></blockquote>
<p>Looks like the Website Project Template is not working in Beta2, at least for me, or did they remove it completly? However, so far I wasn&#8217;t able to do a pre compilation of my website, I can&#8217;t find that feature in Visual Studio 2010.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.andreas-kraus.net/blog/unrecognized-attribute-targetframework/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.andreas-kraus.net/blog/unrecognized-attribute-targetframework/</feedburner:origLink></item>
		<item>
		<title>Still sticking to the DataReader most of the time</title>
		<link>http://feed.andreas-kraus.net/~r/netseo/~3/GqN845xRxbw/</link>
		<comments>http://www.andreas-kraus.net/blog/still-sticking-to-the-datareader-most-of-the-time/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 08:21:39 +0000</pubDate>
		<dc:creator>andreas.kraus</dc:creator>
				<category><![CDATA[ASP.NET]]></category>

		<guid isPermaLink="false">http://www.andreas-kraus.net/blog/?p=252</guid>
		<description><![CDATA[Of course this is a big topic. We got LINQ, SubSonic and all the great ORM Mappers now, but when it comes to performance it&#8217;s still a critical decision. I never really cared much about that when developing Desktop Applications as you usually don&#8217;t have to deal with more than one user at the same [...]]]></description>
			<content:encoded><![CDATA[<p>Of course this is a big topic. We got LINQ, SubSonic and all the great ORM Mappers now, but when it comes to performance it&#8217;s still a critical decision. I never really cared much about that when developing Desktop Applications as you usually don&#8217;t have to deal with more than one user at the same time.</p>
<p>We run several Web Applications based on ASP.NET and many of them got more than 10 Million Pageviews per Day. So it is really critical to have a good Database Backend. I just want to talk about the direct Data Access, so I leave out all the caching stuff, that is a topic of its own. I tested the DataReader, the DataSet and some of the popular ORM tools. It&#8217;s a standard SELECT Query of 10.000 Database Rows. Here&#8217;s what I found out regarding performance:</p>
<p>Obviously the fastest way of accessing Data is still the DataReader with about 20-30ms.<br />
The DataSet raises the bar to about 120ms already.<br />
After that we got LINQ with about 210ms.<br />
There&#8217;s ADO.NET with a whopping 400ms.<br />
And the slowest ORM Mapper is unfortunately nHibernate 2.1 with around 580ms.</p>
<p>So if you have to develop the Data Access for big Web Applications you should still stick as much as possible to the DataReader, no matter how (un)comfortable it is, at least for the really critical sections.</p>
<p>By the way: Really big sites like Plenty Of Fish or MySpace which are based on ASP.NET are not using Caching at all. We&#8217;re talking about more than 1.2 billion page views/month here. It is not used because as soon as the data is put in the cache it&#8217;s already expired. Furthermore no components and just very simple structures including if, then and for loops. Obviously a Load Balancer makes very much sense here. You usually exclude a Database which is being used for searching to save load from the main database.</p>
<p>ORM Mappers are sweet, but it&#8217;s still critical to use them if your Website might go through the roof sometime.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.andreas-kraus.net/blog/still-sticking-to-the-datareader-most-of-the-time/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.andreas-kraus.net/blog/still-sticking-to-the-datareader-most-of-the-time/</feedburner:origLink></item>
		<item>
		<title>Windows Server 2008 FTP Service</title>
		<link>http://feed.andreas-kraus.net/~r/netseo/~3/DaMkxqajFcM/</link>
		<comments>http://www.andreas-kraus.net/blog/windows-server-2008-ftp-service/#comments</comments>
		<pubDate>Tue, 12 May 2009 09:27:11 +0000</pubDate>
		<dc:creator>andreas.kraus</dc:creator>
				<category><![CDATA[Administration]]></category>
		<category><![CDATA[iis7]]></category>

		<guid isPermaLink="false">http://www.andreas-kraus.net/blog/?p=248</guid>
		<description><![CDATA[Since the IIS7 Team published the FTP Server in Version 7.5 life just became easier. It now also supports SSL and the setup is really comfortable. Get the executable from the URL mentioned underneath this post, install it, add Basic Authentication and a suitable FTP User and execute these two lines from the Commandline:

To open [...]]]></description>
			<content:encoded><![CDATA[<p>Since the IIS7 Team published the FTP Server in Version 7.5 life just became easier. It now also supports SSL and the setup is really comfortable. Get the executable from the URL mentioned underneath this post, install it, add Basic Authentication and a suitable FTP User and execute these two lines from the Commandline:</p>
<ol>
<li>To open Port 21: netsh advfirewall firewall add rule name=&#8221;FTP (no SSL)&#8221; action=allow protocol=TCP dir=in localport=21</li>
<li>To enable passive transfers: netsh advfirewall set global StatefulFtp enable </li>
</ol>
<p>That&#8217;s pretty much it. Enjoy a thin and powerful FTP Client from Microsoft for free.</p>
<p>Check <a href="http://learn.iis.net/page.aspx/310/what-is-new-for-microsoft-and-ftp-75/" rel="nofollow">this post</a> for all the updates.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.andreas-kraus.net/blog/windows-server-2008-ftp-service/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.andreas-kraus.net/blog/windows-server-2008-ftp-service/</feedburner:origLink></item>
		<item>
		<title>Check For Row Existance Only</title>
		<link>http://feed.andreas-kraus.net/~r/netseo/~3/qahtKqfA7Xo/</link>
		<comments>http://www.andreas-kraus.net/blog/check-for-row-existance-only/#comments</comments>
		<pubDate>Sun, 11 Jan 2009 16:55:05 +0000</pubDate>
		<dc:creator>andreas.kraus</dc:creator>
				<category><![CDATA[ASP.NET]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://www.andreas-kraus.net/blog/?p=236</guid>
		<description><![CDATA[It&#8217;s something you need to take care of in almost every ASP.NET Application. What if you would just like to know if that specific row exists or not, in SQL Server 2005 or SQL Server 2008. For example: Did this user vote on that topic already or not? There are different possibilities for that kind [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s something you need to take care of in almost every ASP.NET Application. What if you would just like to know if that specific row exists or not, in SQL Server 2005 or SQL Server 2008. For example: Did this user vote on that topic already or not? There are different possibilities for that kind of situation. However, I wanted the fastet solution. If it&#8217;s about a query which looks like this:</p>
<p><strong>SELECT somefield FROM sometable WHERE somefield = &#8217;somevalue&#8217;</strong></p>
<p>In this case &#8217;somevalue&#8217; is used as a literal key value, which also has an index running on it.</p>
<p>So if this query will always return either 0 or 1 rows, then &#8211; from an I/O point of view &#8211; using SELECT COUNT(*) or using EXISTS will be equally fast.</p>
<p>Why? Unfortunately SQL Server is not shortcutting an index seek if the value is being discovered in an intermediate index level. It also doesn&#8217;t shortcut it, if the value is out of range. So we always got a logical read for all index levels.</p>
<p>For the discussion COUNT(*) versus EXISTS, it does not matter whether the index on &#8217;somefield&#8217; is clustered or not. However, the definition of the clustered index (if present) does affect performance. That&#8217;s about testing, you need to check out if the clustered on is faster or not. It mainly depends on the key size of the clustered index, the row size and the size of &#8217;somefield&#8217;. In theory, the fastest situation would be a clustered &#8220;and&#8221; nonclustered index on &#8217;somefield&#8217;. This will make the nonclustered index on &#8217;somefield&#8217; the most shallow index possible, so the index seek on thisindex will use the least amount of I/O.</p>
<p>Finally handing over a resultset will be more costly than returning a return value.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.andreas-kraus.net/blog/check-for-row-existance-only/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.andreas-kraus.net/blog/check-for-row-existance-only/</feedburner:origLink></item>
		<item>
		<title>404 Error while using ASP.NET URL Routing</title>
		<link>http://feed.andreas-kraus.net/~r/netseo/~3/rqvaA0k3nYc/</link>
		<comments>http://www.andreas-kraus.net/blog/404-error-while-using-aspnet-url-routing/#comments</comments>
		<pubDate>Wed, 10 Dec 2008 22:59:29 +0000</pubDate>
		<dc:creator>andreas.kraus</dc:creator>
				<category><![CDATA[ASP.NET]]></category>

		<guid isPermaLink="false">http://www.andreas-kraus.net/blog/?p=233</guid>
		<description><![CDATA[I&#8217;m heavily using the new ASP.NET URL Routing feature introduced in .NET Framework 3.5 SP1 in my new ASP.NET Applications instead of traditional URL Rewriting. I actually wanted to use IIS7 URL Rewriting, but there&#8217;s no way to test your rewrite rules if you are using the built-in VS2008 Cassini Webserver for development (yet).
So I&#8217;ve [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;m heavily using the new ASP.NET URL Routing feature introduced in .NET Framework 3.5 SP1 in my new ASP.NET Applications instead of traditional URL Rewriting. I actually wanted to use IIS7 URL Rewriting, but there&#8217;s no way to test your rewrite rules if you are using the built-in VS2008 Cassini Webserver for development (yet).</p>
<p>So I&#8217;ve set up some sweet URL Routing rules with Webforms and I have to say it works pretty good so far. However, sooner or later I stumbled upon the first problem. I used an UpdatePanel on a webform which went through the URL Routing mechanism. As soon as I hit the postback button I got the following error:</p>
<blockquote><p>
Sys.WebForms.PageRequestManagerServerErrorException: An unknown error occurred while processing the quest on the server. The status code returned from the server was: 404.
</p></blockquote>
<p>Obviously because the form action attribute didn&#8217;t supply the full URL and that is the problem. You can fix it by adding this to your Page_Load:</p>
<pre><code>form1.Action = HttpContext.Current.Request.RawUrl;</code></pre>
<p>I just added it into the MasterPage Page_Load as I&#8217;m using URL Routing all over the Page. That&#8217;ll fix it.</p>
<p>I&#8217;ve also seen this:</p>
<pre><code>if (!String.IsNullOrEmpty(Request.ServerVariables["HTTP_X_ORIGINAL_URL"]))
        {
          form1.Action = Request.ServerVariables["HTTP_X_ORIGINAL_URL"];
        }</code></pre>
<p>However, that snippet doesn&#8217;t work for me, I actually don&#8217;t know why. If that&#8217;s the case for you, too, just use the RawURL snippet above (without an if block).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.andreas-kraus.net/blog/404-error-while-using-aspnet-url-routing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.andreas-kraus.net/blog/404-error-while-using-aspnet-url-routing/</feedburner:origLink></item>
		<item>
		<title>Best Online Storage Service</title>
		<link>http://feed.andreas-kraus.net/~r/netseo/~3/X_GbmW7A7EI/</link>
		<comments>http://www.andreas-kraus.net/blog/best-online-storage-service/#comments</comments>
		<pubDate>Fri, 05 Dec 2008 09:53:23 +0000</pubDate>
		<dc:creator>andreas.kraus</dc:creator>
				<category><![CDATA[Administration]]></category>

		<guid isPermaLink="false">http://www.andreas-kraus.net/blog/?p=230</guid>
		<description><![CDATA[Welcome to the broadband Internet. Nowadays I even get a 3,6MBit Connection when I&#8217;m outside and connected through UMTS. It&#8217;s not a problem anymore to move bigger files through the internet. Yes, what we want is to be able to carry and access our digital lives wherever we go and from whatever device we may [...]]]></description>
			<content:encoded><![CDATA[<p>Welcome to the broadband Internet. Nowadays I even get a 3,6MBit Connection when I&#8217;m outside and connected through UMTS. It&#8217;s not a problem anymore to move bigger files through the internet. Yes, what we want is to be able to carry and access our digital lives wherever we go and from whatever device we may have in hand. Photos, video, documents, contacts, spreadsheets and everything else we want have access to. Can this be stored comfortable in just one place, accessible from everywhere?</p>
<p>When you use these online apps, it&#8217;s because you&#8217;re saving a lot of time and putting lots of different people on the same page. It will be a natural process for companies to become more webcentric as they notice what the benefits are.</p>
<p>Edit Documents Online, manage multiple users and much more, I highly recommend <a href="http://www.andreas-kraus.net/blog/go/box.php" rel="nofollow" target="_blank">trying this provider 14 days for free</a>. My experiences are that this is the easiest way to share and manage your files online, everytime and everywhere.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.andreas-kraus.net/blog/best-online-storage-service/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.andreas-kraus.net/blog/best-online-storage-service/</feedburner:origLink></item>
		<item>
		<title>New .NET Logo</title>
		<link>http://feed.andreas-kraus.net/~r/netseo/~3/Wj2NkDuvG-c/</link>
		<comments>http://www.andreas-kraus.net/blog/new-net-logo/#comments</comments>
		<pubDate>Sun, 26 Oct 2008 09:56:47 +0000</pubDate>
		<dc:creator>andreas.kraus</dc:creator>
				<category><![CDATA[ASP.NET]]></category>

		<guid isPermaLink="false">http://www.andreas-kraus.net/blog/?p=224</guid>
		<description><![CDATA[I just stumbled upon the new .NET Logo which will be replacing the old and rusty 8 years old .NET Logo. The new one looks way more professional.
Old .NET Framework Logo:

New .NET Framework Logo:

Side note: There is a pretty interesting discussion going on about the Amazon EC3 W2K3 topic, if you didn&#8217;t check out the [...]]]></description>
			<content:encoded><![CDATA[<p>I just stumbled upon the new .NET Logo which will be replacing the old and rusty 8 years old .NET Logo. The new one looks way more professional.</p>
<p>Old .NET Framework Logo:<br />
<img src="http://www.andreas-kraus.net/blog/wp-content/uploads/2008/10/net-old.png" alt="Old .NET Framework Logo" title="Old .NET Framework Logo" width="137" height="74" class="alignnone size-full wp-image-226" /></p>
<p>New .NET Framework Logo:<br />
<img src="http://www.andreas-kraus.net/blog/wp-content/themes/copyblogger/images/net-logo.png" alt="New .NET Framework Logo" title="New .NET Framework Logo" class="alignnone size-full wp-image-226" /></p>
<p>Side note: There is a pretty interesting discussion going on about the Amazon EC3 W2K3 topic, if you didn&#8217;t check out the thread at the AWS forum yet you should have a look at it, check my previous blog post <a href="http://www.andreas-kraus.net/blog/amazon-launches-windows-but/">here</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.andreas-kraus.net/blog/new-net-logo/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.andreas-kraus.net/blog/new-net-logo/</feedburner:origLink></item>
		<item>
		<title>Amazon launches Windows.. BUT</title>
		<link>http://feed.andreas-kraus.net/~r/netseo/~3/CNuRXmhBemY/</link>
		<comments>http://www.andreas-kraus.net/blog/amazon-launches-windows-but/#comments</comments>
		<pubDate>Fri, 24 Oct 2008 14:47:06 +0000</pubDate>
		<dc:creator>andreas.kraus</dc:creator>
				<category><![CDATA[ASP.NET]]></category>

		<guid isPermaLink="false">http://www.andreas-kraus.net/blog/?p=221</guid>
		<description><![CDATA[Yesterday Amazon launched a new EC2 Version including support for Windows and SQL Server.
Unfortunately it only runs Windows 2003 Server and SQL Server 2005. Now that we are all happy about Windows 2008, the new IIS7, the new URL Rewriting features and so on.
This really is a pity. I&#8217;d really like to use Amazon EC2, [...]]]></description>
			<content:encoded><![CDATA[<p>Yesterday Amazon launched a new EC2 Version including support for Windows and SQL Server.</p>
<p>Unfortunately it only runs Windows 2003 Server and SQL Server 2005. Now that we are all happy about Windows 2008, the new IIS7, the new URL Rewriting features and so on.</p>
<p>This really is a pity. I&#8217;d really like to use Amazon EC2, but I don&#8217;t want to take two steps back in development. Once you worked with IIS7 you don&#8217;t want to switch back to the old and clumsy IIS6. Especially URL Rewriting is so nice with IIS7.</p>
<p>There is a thread running on the EC2 Forum, but until now noone from Amazon replied. If you&#8217;re registered there you might want to drop a reply, too: <a href="http://developer.amazonwebservices.com/connect/thread.jspa?threadID=25660" target="_blank" rel="nofollow">http://developer.amazonwebservices.com/connect/thread.jspa?threadID=25660</a>.</p>
<p>UPDATE:</p>
<blockquote><p>
Thanks for all of your feedback.  Our intention is to support the widest variety of options for our customers that we can.  We are already working to support Windows 2008 in EC2, and anticipate being able to offer it publicly in the early part of next year.
</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.andreas-kraus.net/blog/amazon-launches-windows-but/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		<feedburner:origLink>http://www.andreas-kraus.net/blog/amazon-launches-windows-but/</feedburner:origLink></item>
		<item>
		<title>C# CSV Import</title>
		<link>http://feed.andreas-kraus.net/~r/netseo/~3/h-9BIyEOtZ4/</link>
		<comments>http://www.andreas-kraus.net/blog/c-csv-import/#comments</comments>
		<pubDate>Sun, 17 Aug 2008 15:46:13 +0000</pubDate>
		<dc:creator>andreas.kraus</dc:creator>
				<category><![CDATA[ASP.NET]]></category>

		<guid isPermaLink="false">http://www.andreas-kraus.net/blog/?p=204</guid>
		<description><![CDATA[An old topic, I agree. Unfortunately we still can&#8217;t forget about CSV files and I see so many questions popping up on forums and especially on my blog related to this topic. Not every company features APIs or XML files yet, so it&#8217;s always nice to be comfortable with CSV Readers or Libraries.
First of all: [...]]]></description>
			<content:encoded><![CDATA[<p>An old topic, I agree. Unfortunately we still can&#8217;t forget about CSV files and I see so many questions popping up on forums and especially on my blog related to this topic. Not every company features APIs or XML files yet, so it&#8217;s always nice to be comfortable with CSV Readers or Libraries.</p>
<p>First of all: Don&#8217;t write your own CSV Parser! No matter if it&#8217;s a C# CSV Import or VB.NET. There are so many libraries, frameworks, etc. &#8211; you really don&#8217;t have to reinvent the wheel once again. It&#8217;s not just about using String.Split(&#8220;,&#8221;), you need to care for much more nasty stuff. Fortunately other people already went through the headaches for you!</p>
<p>So what to do? Use FileHelpers Library 2.0! Instead of calling array items by writing myarray[3] you can even use e.g. mycart.ID now, isn&#8217;t that beautiful? Here&#8217;s a little code example:</p>
<pre><code>FileHelperEngine engine = new FileHelperEngine(typeof(AdRow));
    AdRow[] res = engine.ReadFile(filename) as AdRow[];
    foreach (AdRow ar in res)
    {
        Response.Write(ar.CartItem + "&lt;br /&gt;");
    }</code></pre>
<p>It won&#8217;t get easier than that. I use it in several ASP.NET Projects and best of all: It&#8217;s free! Check it out and thanks to Marcos for creating it: <a href="http://www.filehelpers.com/" target="_blank">FileHelpers 2.0</a>. You will find tons of examples for reading and writing CSV Files.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.andreas-kraus.net/blog/c-csv-import/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		<feedburner:origLink>http://www.andreas-kraus.net/blog/c-csv-import/</feedburner:origLink></item>
		<item>
		<title>URL Rewriting with IIS7</title>
		<link>http://feed.andreas-kraus.net/~r/netseo/~3/bSIm9n47RIg/</link>
		<comments>http://www.andreas-kraus.net/blog/url-rewriting-with-iis7/#comments</comments>
		<pubDate>Sat, 31 May 2008 08:44:50 +0000</pubDate>
		<dc:creator>andreas.kraus</dc:creator>
				<category><![CDATA[ASP.NET]]></category>

		<guid isPermaLink="false">http://www.andreas-kraus.net/blog/url-rewriting-with-iis7/</guid>
		<description><![CDATA[Finally Microsoft released the long anticipated IIS7 URL Rewrite Module. It really was about time! The key features look promising:

Rules-based URL rewriting engine
Regular expression pattern matching
Wildcard pattern matching
Global and distributed rewrite rules
Access to server variables and http headers
Various rule actions
Rewrite maps
UI for managing rewrite rules
GUI tool for importing of mod_rewrite rules

Quite comfortable that they even [...]]]></description>
			<content:encoded><![CDATA[<p>Finally Microsoft released the long anticipated <strong>IIS7 URL Rewrite Module</strong>. It really was about time! The key features look promising:</p>
<ul>
<li>Rules-based URL rewriting engine</li>
<li>Regular expression pattern matching</li>
<li>Wildcard pattern matching</li>
<li>Global and distributed rewrite rules</li>
<li>Access to server variables and http headers</li>
<li>Various rule actions</li>
<li>Rewrite maps</li>
<li>UI for managing rewrite rules</li>
<li>GUI tool for importing of mod_rewrite rules</li>
</ul>
<p>Quite comfortable that they even integrated a GUI Tool for importing Apache2 mod_rewrite rules. I&#8217;m not sure yet how strong URL Routing is, which first came up with the MVC CTPs and is now available for ASP.NET, too &#8211; I didn&#8217;t test it yet. For now I will give the new IIS7 Module a first shot as my current projects use URL Rewriting already and I think it&#8217;ll be easier to port my existing third-party URL Rewrite Engine to the new IIS7 one. I plan on not touching URL Routing until it reached the final status.</p>
<p>Get it here: <a href="http://learn.iis.net/page.aspx/460/using-url-rewrite-module/" rel="nofollow" target="_blank">IIS7 &#8211; using url rewrite module</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.andreas-kraus.net/blog/url-rewriting-with-iis7/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		<feedburner:origLink>http://www.andreas-kraus.net/blog/url-rewriting-with-iis7/</feedburner:origLink></item>
	</channel>
</rss>
