<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Blue Fenix (moved to bluefenix.net)</title>
        <link>http://chrisfrazier.net/blog/Default.aspx</link>
        <description>Simplify, Simplify.</description>
        <language>en-US</language>
        <copyright>Christopher</copyright>
        <managingEditor>chris.frazier@gmail.com</managingEditor>
        <generator>Subtext Version 2.0.0.0</generator>
        <image>
            <title>Blue Fenix (moved to bluefenix.net)</title>
            <url>http://chrisfrazier.net/blog/images/RSS2Image.gif</url>
            <link>http://chrisfrazier.net/blog/Default.aspx</link>
            <width>77</width>
            <height>60</height>
        </image>
        <item>
            <title>Blog Moving</title>
            <link>http://chrisfrazier.net/blog/archive/2007/11/14/blog_moving.aspx</link>
            <description>
&lt;p&gt;I noticed that a handful of people are still subscribed to this little ol' 
weblog. Well, I've decided to start fresh at a new url &lt;a href="http://bluefenix.net"&gt;http://bluefenix.net&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Hope to see ya there. ;) Ciao!&lt;/p&gt;[ Nothing Playing. ] 
&lt;p&gt;&lt;/p&gt;&lt;img src="http://chrisfrazier.net/blog/aggbug/792.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Christopher</dc:creator>
            <guid>http://chrisfrazier.net/blog/archive/2007/11/14/blog_moving.aspx</guid>
            <pubDate>Wed, 14 Nov 2007 18:35:21 GMT</pubDate>
            <comments>http://chrisfrazier.net/blog/archive/2007/11/14/blog_moving.aspx#feedback</comments>
            <wfw:commentRss>http://chrisfrazier.net/blog/comments/commentRss/792.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Paul Stovell has lost his marbles.</title>
            <category>.NET</category>
            <category>As if you cared</category>
            <link>http://chrisfrazier.net/blog/archive/2007/07/25/PaulStovellhaslosthismarbles.aspx</link>
            <description>&lt;p&gt;[note: this started as a comment but started getting a little long-winded. what follows is a little gentle ribbing of Paul for &lt;a href="http://www.paulstovell.net/blog/index.php/runtime-caching/"&gt;a recent post he wrote about being a lazy cache programmer &lt;/a&gt;:P] &lt;/p&gt;&lt;p&gt;Mr. Stovell, you've officially lost your marbles :P j/k &lt;/p&gt;&lt;p&gt;okay, just to play devil's advocate...&amp;gt;:) I think the asp.net cache framework fits very nicely for its purpose - what you propose seems like another abstraction on top of it, for the benefit of thinking *less* about what items you should cache to *optimize* code execution time? So, just throw everything possible at it. Cache can handle that, right? hehe. nope. That's why you think about it, apply it where appropriate, and don't waste cycles calculating if you should even cache or not as part of the caching process of a production site. I dunno, seems like a wasted effort to me, especially when you start to go down the rabbit hole of deciding what should/shouldn't be cached as part of the process.  &lt;/p&gt;&lt;p&gt;I'm not posting this to be a jerk...I'm putting your feet to the fire a little! Think it thru a little more, maybe (since I seem to be concentrating on the calculations as part of the process) move that logic outside of the [Deterministic] control flow to an external "cache minder" process. have your cake and cache it too.&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="90" alt="wheredacacheat" src="http://chrisfrazier.net/images/PaulStovellhaslosthismarbles_3D0D/wheredacacheat.jpg" width="120" align="right" border="0" /&gt;  but the main point of cache in asp.net is to improve performance by taking anything that takes longer than O(1) and returning it nearly that fast (a guess considering that Cache exposes itself as a Dictionary to store its items) I guess that means my case (while I'm advocating;) is for using the cache as is, and make conscious decisions on what should go into it instead of letting some attribute-fu decide for me. What happens when your attribute logic is wrong? DOOM! :P hehe, not really. What do you think? &lt;/p&gt;&lt;p&gt;p.s. my server crapped before I had a chance to post this. Is there some new law that states that technology starts to break down the minute you start to be a smart-ass?&lt;/p&gt;&lt;img src="http://chrisfrazier.net/blog/aggbug/785.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Christopher</dc:creator>
            <guid>http://chrisfrazier.net/blog/archive/2007/07/25/PaulStovellhaslosthismarbles.aspx</guid>
            <pubDate>Wed, 25 Jul 2007 09:35:00 GMT</pubDate>
            <comments>http://chrisfrazier.net/blog/archive/2007/07/25/PaulStovellhaslosthismarbles.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://chrisfrazier.net/blog/comments/commentRss/785.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Christopher is ...</title>
            <link>http://chrisfrazier.net/blog/archive/2007/06/29/783.aspx</link>
            <description>
&lt;p&gt;posted up watchin Shrek 2 with Ethan.:)&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;&lt;img src="http://chrisfrazier.net/blog/aggbug/783.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Christopher</dc:creator>
            <guid>http://chrisfrazier.net/blog/archive/2007/06/29/783.aspx</guid>
            <pubDate>Sat, 30 Jun 2007 00:34:00 GMT</pubDate>
            <comments>http://chrisfrazier.net/blog/archive/2007/06/29/783.aspx#feedback</comments>
            <wfw:commentRss>http://chrisfrazier.net/blog/comments/commentRss/783.aspx</wfw:commentRss>
        </item>
        <item>
            <title>So quiet...</title>
            <category>.NET</category>
            <category>PostXING</category>
            <category>As if you cared</category>
            <link>http://chrisfrazier.net/blog/archive/2007/06/07/Soquiet.aspx</link>
            <description>
&lt;p&gt;...and so &lt;strong&gt;dark &lt;/strong&gt;in here.&lt;/p&gt;&lt;img src="http://chrisfrazier.net/blog/aggbug/764.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Christopher</dc:creator>
            <guid>http://chrisfrazier.net/blog/archive/2007/06/07/Soquiet.aspx</guid>
            <pubDate>Fri, 08 Jun 2007 00:17:00 GMT</pubDate>
            <comments>http://chrisfrazier.net/blog/archive/2007/06/07/Soquiet.aspx#feedback</comments>
            <wfw:commentRss>http://chrisfrazier.net/blog/comments/commentRss/764.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Sql Server Management Studio Express - you suck.</title>
            <category>As if you cared</category>
            <link>http://chrisfrazier.net/blog/archive/2007/05/25/SqlServerManagementStudioExpressyousuck.aspx</link>
            <description>
&lt;p&gt;I would like to know who thought it was a good idea to remove "import 
data..." and "export data..." from this particular flavor of the worst front end 
to an otherwise badass rdbms. I shouldn't have to fight with a program to 
get my databases in order. What a joke.&lt;/p&gt;[ Nothing Playing. ]
&lt;p&gt;&lt;/p&gt;&lt;img src="http://chrisfrazier.net/blog/aggbug/761.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Christopher</dc:creator>
            <guid>http://chrisfrazier.net/blog/archive/2007/05/25/SqlServerManagementStudioExpressyousuck.aspx</guid>
            <pubDate>Fri, 25 May 2007 19:03:00 GMT</pubDate>
            <comments>http://chrisfrazier.net/blog/archive/2007/05/25/SqlServerManagementStudioExpressyousuck.aspx#feedback</comments>
            <wfw:commentRss>http://chrisfrazier.net/blog/comments/commentRss/761.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Your Code is Suboptimal!</title>
            <category>As if you cared</category>
            <link>http://chrisfrazier.net/blog/archive/2007/05/01/YourCodeisSuboptimal.aspx</link>
            <description>&lt;a href="http://software.ericsink.com"&gt;&lt;img alt="Your Code is Suboptimal!" src="http://chrisfrazier.net/blog/images/chrisfrazier_net/blog/24/o_Photo%2055.jpg" /&gt;&lt;/a&gt;&lt;img src="http://chrisfrazier.net/blog/aggbug/756.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Christopher</dc:creator>
            <guid>http://chrisfrazier.net/blog/archive/2007/05/01/YourCodeisSuboptimal.aspx</guid>
            <pubDate>Tue, 01 May 2007 15:36:00 GMT</pubDate>
            <comments>http://chrisfrazier.net/blog/archive/2007/05/01/YourCodeisSuboptimal.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://chrisfrazier.net/blog/comments/commentRss/756.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Exposing Hidden Events</title>
            <category>.NET</category>
            <link>http://chrisfrazier.net/blog/archive/2007/04/25/ExposingHiddenEvents.aspx</link>
            <description>
&lt;p&gt;I recently ran into a neat little nugget of functionality in C# with events. 
Normally in C# when we define events we stop at something like this:&lt;/p&gt;&lt;pre&gt;&lt;span style="COLOR: blue"&gt;public&lt;/span&gt; &lt;span style="COLOR: blue"&gt;event&lt;/span&gt; EventHandler&amp;lt;MyEventArgs&amp;gt; MyEvent;&lt;/pre&gt;
&lt;p&gt;The thing is, you can explicitly implement the add and remove accessors if 
you throw some curly braces into the mix. Why does this matter? Imagine that you 
have a MainForm, and a usercontrol named ControlPanel. ControlPanel 
contains another usercontrol called hiddenControl that exposes an event that you 
want to handle in MainForm, but all MainForm has access to is 
ControlPanel...&lt;/p&gt;&lt;pre&gt;&lt;span style="COLOR: blue"&gt;public&lt;/span&gt; &lt;span style="COLOR: blue"&gt;event&lt;/span&gt; &lt;font color="#92dceb"&gt;EventHandler&lt;/font&gt;&amp;lt;&lt;font color="#92dceb"&gt;MyEventArgs&lt;/font&gt;&amp;gt; MyEvent{
	&lt;font color="#0000ff"&gt;add&lt;/font&gt;{
		&lt;span style="COLOR: blue"&gt;this&lt;/span&gt;.hiddenControl.MyEvent += &lt;font color="#0000ff"&gt;value&lt;/font&gt;;
	}
	&lt;font color="#0000ff"&gt;remove&lt;/font&gt;{
		&lt;span style="COLOR: blue"&gt;this&lt;/span&gt;.hiddenControl.MyEvent -= &lt;font color="#0000ff"&gt;value&lt;/font&gt;;
	}
}&lt;/pre&gt;
&lt;p&gt;Now you can subscribe to the event in MainForm without making the usercontrol 
member public in ControlPanel.&lt;/p&gt;
&lt;p class="media"&gt;[ Currently Playing : Burn Away - Foo Fighters - One by One 
(4:57) ]&lt;/p&gt;&lt;img src="http://chrisfrazier.net/blog/aggbug/755.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Christopher</dc:creator>
            <guid>http://chrisfrazier.net/blog/archive/2007/04/25/ExposingHiddenEvents.aspx</guid>
            <pubDate>Wed, 25 Apr 2007 22:44:00 GMT</pubDate>
            <comments>http://chrisfrazier.net/blog/archive/2007/04/25/ExposingHiddenEvents.aspx#feedback</comments>
            <wfw:commentRss>http://chrisfrazier.net/blog/comments/commentRss/755.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Windows Updates Make Me Nervous</title>
            <category>As if you cared</category>
            <link>http://chrisfrazier.net/blog/archive/2007/03/22/WindowsUpdatesMakeMeNervous.aspx</link>
            <description>&lt;p&gt; hehe...&lt;/p&gt;
&lt;blockquote&gt;
  &lt;p&gt;Rather surprised by the new 'updates are ready' message from Microsoft. 
  Hmmm. 
  &lt;/p&gt;&lt;p&gt;&lt;img alt="revised updates message from microsoft" src="http://secretGeek.net/image/updates.PNG" /&gt; 
  &lt;/p&gt;&lt;p&gt;Perhaps they know just how much frustration we had on the home pc recently 
  due to their dodgy updates. 
  &lt;/p&gt;&lt;p&gt;(Fixed thanks to &lt;a href="http://www.google.com/search?hl=en&amp;amp;q=windows+updates+swigart"&gt;Scott 
  Swigart&lt;/a&gt;) &lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Source: &lt;a href="http://www.secretGeek.net/update_nervous.asp"&gt;Windows 
Updates Make Me Nervous&lt;br /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://chrisfrazier.net/blog/aggbug/754.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Christopher</dc:creator>
            <guid>http://chrisfrazier.net/blog/archive/2007/03/22/WindowsUpdatesMakeMeNervous.aspx</guid>
            <pubDate>Thu, 22 Mar 2007 22:45:00 GMT</pubDate>
            <comments>http://chrisfrazier.net/blog/archive/2007/03/22/WindowsUpdatesMakeMeNervous.aspx#feedback</comments>
            <wfw:commentRss>http://chrisfrazier.net/blog/comments/commentRss/754.aspx</wfw:commentRss>
        </item>
        <item>
            <title>skmMenu code change to work with xhtml doctypes</title>
            <category>.NET</category>
            <category>ASP.NET Server Controls</category>
            <link>http://chrisfrazier.net/blog/archive/2007/03/22/skmMenucodechangetoworkwithxhtmldoctypes.aspx</link>
            <description>
&lt;p&gt;This is just a re-statement of a &lt;a href="http://www.gotdotnet.com/workspaces/messageboard/thread.aspx?id=a8ee64df-8f2a-483f-8594-10aaa66988ce&amp;amp;threadid=48c4a040-054b-49f3-b40a-bc3fffa2ee97"&gt;forum 
thread&lt;/a&gt; that discusses the fix, but since gotdotnet is not going to be 
around very much longer I thought I'd post this little tidbit here as well. 
Basically, when I upgraded one of my sites to .net 2.0, skmMenu got upgraded 
right along with it. The only issue was that all of my menus would show up at 
the far left corner of the screen, and when you try to navigate to them over 
there they disappear thanks to the menu items between the cursor and the target. 
I think I only saw this behavior in firefox, but the code fix works in both 
firefox and IE. I just went thru the .js file and the javascript in the .resx 
for embedded javascript goodness and placed a 'px' after any integer value. The 
reason for this is that firefox requires measurement properties be set with 
appropriate identifiers when it's displaying a structured document. Anyways, 
here's a reprint of the code:&lt;/p&gt;&lt;pre&gt;&lt;span style="COLOR: blue"&gt;function&lt;/span&gt; skm_mousedOverMenu(menuID,elem,parent,displayedVertically,imageSource){
	skm_stopTick();
	skm_closeSubMenus(elem);
	&lt;span style="COLOR: blue"&gt;var&lt;/span&gt; childID=elem.id+&lt;span style="COLOR: maroon"&gt;"-subMenu"&lt;/span&gt;;  &lt;span style="COLOR: green"&gt;// Display child menu if needed
&lt;/span&gt;	&lt;span style="COLOR: blue"&gt;if&lt;/span&gt; (document.getElementById(childID)!=&lt;span style="COLOR: blue"&gt;null&lt;/span&gt;){  &lt;span style="COLOR: green"&gt;// make the child menu visible and specify that its position is specified in absolute coordinates
&lt;/span&gt;		document.getElementById(childID).style.display=&lt;span style="COLOR: maroon"&gt;'block'&lt;/span&gt;;
		document.getElementById(childID).style.position=&lt;span style="COLOR: maroon"&gt;'absolute'&lt;/span&gt;;
		skm_OpenMenuItems = skm_OpenMenuItems.concat(childID);
		&lt;span style="COLOR: blue"&gt;if&lt;/span&gt; (displayedVertically){ &lt;span style="COLOR: green"&gt;// Set the child menu's left and top attributes according to the menu's offsets
&lt;/span&gt;			document.getElementById(childID).style.left=skm_getAscendingLefts(parent)+parent.offsetWidth+&lt;span style="COLOR: maroon"&gt;'px'&lt;/span&gt;;
			document.getElementById(childID).style.top=skm_getAscendingTops(elem)+&lt;span style="COLOR: maroon"&gt;'px'&lt;/span&gt;;
			&lt;span style="COLOR: blue"&gt;var&lt;/span&gt; visibleWidth=parseInt(window.outerWidth?window.outerWidth-&lt;span style="COLOR: maroon"&gt;9&lt;/span&gt;:document.body.clientWidth,&lt;span style="COLOR: maroon"&gt;10&lt;/span&gt;+&lt;span style="COLOR: maroon"&gt;'px'&lt;/span&gt;);
			&lt;span style="COLOR: blue"&gt;if&lt;/span&gt; ((parseInt(document.getElementById(childID).offsetLeft,&lt;span style="COLOR: maroon"&gt;10&lt;/span&gt;+&lt;span style="COLOR: maroon"&gt;'px'&lt;/span&gt;)+parseInt(document.getElementById(childID).offsetWidth,&lt;span style="COLOR: maroon"&gt;10&lt;/span&gt;+&lt;span style="COLOR: maroon"&gt;'px'&lt;/span&gt;))&amp;gt;visibleWidth) {
				document.getElementById(childID).style.left=visibleWidth-parseInt(document.getElementById(childID).offsetWidth,&lt;span style="COLOR: maroon"&gt;10&lt;/span&gt;+&lt;span style="COLOR: maroon"&gt;'px'&lt;/span&gt;);
			}
		}&lt;span style="COLOR: blue"&gt;else&lt;/span&gt;{  &lt;span style="COLOR: green"&gt;// Set the child menu's left and top attributes according to the menu's offsets
&lt;/span&gt;			document.getElementById(childID).style.left=skm_getAscendingLefts(elem)+&lt;span style="COLOR: maroon"&gt;'px'&lt;/span&gt;;
			document.getElementById(childID).style.top=skm_getAscendingTops(parent)+parent.offsetHeight+&lt;span style="COLOR: maroon"&gt;'px'&lt;/span&gt;;
			&lt;span style="COLOR: blue"&gt;if&lt;/span&gt; (document.getElementById(childID).offsetWidth&amp;lt;elem.offsetWidth)
				document.getElementById(childID).style.width=elem.offsetWidth+&lt;span style="COLOR: maroon"&gt;'px'&lt;/span&gt;;
		}
	}
	&lt;span style="COLOR: blue"&gt;if&lt;/span&gt; (skm_SelectedMenuStyleInfos[menuID] != &lt;span style="COLOR: blue"&gt;null&lt;/span&gt;) skm_SelectedMenuStyleInfos[menuID].applyToElement(elem);
	&lt;span style="COLOR: blue"&gt;if&lt;/span&gt; (skm_highlightTopMenus[menuID]){
		&lt;span style="COLOR: blue"&gt;var&lt;/span&gt; eId=elem.id+&lt;span style="COLOR: maroon"&gt;''&lt;/span&gt;;
		&lt;span style="COLOR: blue"&gt;while&lt;/span&gt; (eId.indexOf(&lt;span style="COLOR: maroon"&gt;'-subMenu'&lt;/span&gt;)&amp;gt;=&lt;span style="COLOR: maroon"&gt;0&lt;/span&gt;){
			eId=eId.substring(&lt;span style="COLOR: maroon"&gt;0&lt;/span&gt;, eId.lastIndexOf(&lt;span style="COLOR: maroon"&gt;'-subMenu'&lt;/span&gt;));
			skm_SelectedMenuStyleInfos[menuID].applyToElement(document.getElementById(eId));
		}
	}	
	&lt;span style="COLOR: blue"&gt;if&lt;/span&gt; (imageSource!=&lt;span style="COLOR: maroon"&gt;''&lt;/span&gt;){
		setimage(elem,imageSource)
	}
}&lt;/pre&gt;&lt;pre&gt;&lt;span style="COLOR: blue"&gt;function&lt;/span&gt; skm_shimSetVisibility(makevisible, tableid){
	&lt;span style="COLOR: blue"&gt;var&lt;/span&gt; tblRef=document.getElementById(tableid);
	&lt;span style="COLOR: blue"&gt;var&lt;/span&gt; IfrRef=document.getElementById(&lt;span style="COLOR: maroon"&gt;'shim'&lt;/span&gt;+tableid);
	&lt;span style="COLOR: blue"&gt;if&lt;/span&gt; (tblRef!=&lt;span style="COLOR: blue"&gt;null&lt;/span&gt; &amp;amp;&amp;amp; IfrRef!=&lt;span style="COLOR: blue"&gt;null&lt;/span&gt;){
		&lt;span style="COLOR: blue"&gt;if&lt;/span&gt;(makevisible){
			IfrRef.style.width=tblRef.offsetWidth+&lt;span style="COLOR: maroon"&gt;'px'&lt;/span&gt;;
			IfrRef.style.height=tblRef.offsetHeight+&lt;span style="COLOR: maroon"&gt;'px'&lt;/span&gt;;
			IfrRef.style.top=tblRef.style.top+&lt;span style="COLOR: maroon"&gt;'px'&lt;/span&gt;;
			IfrRef.style.left=tblRef.style.left+&lt;span style="COLOR: maroon"&gt;'px'&lt;/span&gt;;
			IfrRef.style.zIndex=tblRef.style.zIndex-&lt;span style="COLOR: maroon"&gt;1&lt;/span&gt;;
			IfrRef.style.display=&lt;span style="COLOR: maroon"&gt;"block"&lt;/span&gt;;
		}&lt;span style="COLOR: blue"&gt;else&lt;/span&gt;{
			IfrRef.style.display=&lt;span style="COLOR: maroon"&gt;"none"&lt;/span&gt;;
		}
	}
}&lt;/pre&gt;
&lt;p&gt;These were the only two functions that needed code adjustment. Enjoy.&lt;/p&gt;
&lt;p class="media"&gt;[ Currently Playing : Mannequin Republic - At the Drive-In - 
Relationship of Command [Japan (3:02) ]&lt;/p&gt;&lt;img src="http://chrisfrazier.net/blog/aggbug/753.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Christopher</dc:creator>
            <guid>http://chrisfrazier.net/blog/archive/2007/03/22/skmMenucodechangetoworkwithxhtmldoctypes.aspx</guid>
            <pubDate>Thu, 22 Mar 2007 17:10:00 GMT</pubDate>
            <comments>http://chrisfrazier.net/blog/archive/2007/03/22/skmMenucodechangetoworkwithxhtmldoctypes.aspx#feedback</comments>
            <wfw:commentRss>http://chrisfrazier.net/blog/comments/commentRss/753.aspx</wfw:commentRss>
        </item>
        <item>
            <title>ASP.NET - UrlRewriting with PathInfo and base urls</title>
            <category>.NET</category>
            <link>http://chrisfrazier.net/blog/archive/2007/03/15/ASP.NETUrlRewritingwithPathInfoandbaseurls.aspx</link>
            <description>
&lt;p&gt;I read &lt;a href="http://weblogs.asp.net/scottgu/archive/2007/02/26/tip-trick-url-rewriting-with-asp-net.aspx"&gt;this 
excellent post from ScottGu &lt;/a&gt;and decided to use it with a page that 
implemented a masterpage. I didn't have to use postbacks in my scenario, but 
there were links included from the masterpage. The problem is that if you use 
app-relative paths for your href attributes (ex: &amp;lt;a href="/default.aspx"&amp;gt;) 
the browser (FF 2.0.0.2 and IE 7 anyways) interperets the url with pathinfo 
differently than a url without. The base url includes the original page (ex: &lt;a href="http://localhost:3333/rewriter.aspx/default.aspx"&gt;http://localhost:3333/rewriter.aspx/default.aspx&lt;/a&gt;). 
Guess what? The webserver picks up the last .aspx extension, 
default.aspx, that bad boy doesn't exist, and you get a 404 instead of 
going to &lt;a href="http://localhost:3333/default.aspx"&gt;http://localhost:3333/default.aspx&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;In the comments, Ian Oxley suggested that you can re-base links in your 
page/css/other static files using the &amp;lt;base&amp;gt; element in the head of your 
page. I expanded on it a little, since this behavior is only on one page of my 
site currently, and added the following code into the Page_Load event of the 
offending page:&lt;/p&gt;&lt;pre&gt;&lt;span style="COLOR: blue"&gt;this&lt;/span&gt;.Header.Controls.Add(
&lt;span style="COLOR: blue"&gt;new&lt;/span&gt; LiteralControl(&lt;span style="COLOR: maroon"&gt;"&amp;lt;base href=\""&lt;/span&gt; +
 Request.Url.ToString().Replace(Request.RawUrl, &lt;span style="COLOR: maroon"&gt;""&lt;/span&gt;).Replace(Request.PathInfo, &lt;span style="COLOR: maroon"&gt;""&lt;/span&gt;) + 
&lt;span style="COLOR: maroon"&gt;"\"&amp;gt;"&lt;/span&gt;));&lt;/pre&gt;
&lt;p&gt;Now the base tag works on both the live site and the one that 
WebDev.WebServer spins up as well.&lt;/p&gt;
&lt;p class="media"&gt;[ Currently Playing : Them Bones - Alice in Chains - Nothing 
Safe: Best of the Box (2:29) ]&lt;/p&gt;&lt;img src="http://chrisfrazier.net/blog/aggbug/746.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Christopher</dc:creator>
            <guid>http://chrisfrazier.net/blog/archive/2007/03/15/ASP.NETUrlRewritingwithPathInfoandbaseurls.aspx</guid>
            <pubDate>Thu, 15 Mar 2007 18:45:00 GMT</pubDate>
            <comments>http://chrisfrazier.net/blog/archive/2007/03/15/ASP.NETUrlRewritingwithPathInfoandbaseurls.aspx#feedback</comments>
            <wfw:commentRss>http://chrisfrazier.net/blog/comments/commentRss/746.aspx</wfw:commentRss>
        </item>
    </channel>
</rss>