<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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:dc="http://purl.org/dc/elements/1.1/" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" version="2.0">
  <channel>
    <title>Dan Miser - ASP.NET</title>
    <link>http://www.distribucon.com/blog/</link>
    <description>Thoughts from Dan Miser</description>
    <language>en-us</language>
    <copyright>Dan Miser</copyright>
    <lastBuildDate>Sun, 08 Jan 2012 22:33:36 GMT</lastBuildDate>
    <generator>newtelligence dasBlog 2.3.9074.18820</generator>
    <managingEditor>dmiser@distribucon.com</managingEditor>
    <webMaster>dmiser@distribucon.com</webMaster>
    <item>
      <trackback:ping>http://www.distribucon.com/blog/Trackback.aspx?guid=e3582e67-e6c7-4e07-88fe-7659a17011b4</trackback:ping>
      <pingback:server>http://www.distribucon.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.distribucon.com/blog/PermaLink,guid,e3582e67-e6c7-4e07-88fe-7659a17011b4.aspx</pingback:target>
      <dc:creator>Dan Miser</dc:creator>
      <wfw:comment>http://www.distribucon.com/blog/CommentView,guid,e3582e67-e6c7-4e07-88fe-7659a17011b4.aspx</wfw:comment>
      <wfw:commentRss>http://www.distribucon.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=e3582e67-e6c7-4e07-88fe-7659a17011b4</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">Martijn Boland provides us with a nice
way to <a href="http://blogs.taiga.nl/martijn/2011/05/03/keep-your-users-informed-with-asp-net-mvc/">display
message banners in an ASP.NET MVC application</a>. I highly recommend checking out
his blog post and code sample.<br /><p></p><img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=e3582e67-e6c7-4e07-88fe-7659a17011b4" /></body>
      <title>Message banners in ASP.NET MVC</title>
      <guid isPermaLink="false">http://www.distribucon.com/blog/PermaLink,guid,e3582e67-e6c7-4e07-88fe-7659a17011b4.aspx</guid>
      <link>http://www.distribucon.com/blog/MessageBannersInASPNETMVC.aspx</link>
      <pubDate>Sun, 08 Jan 2012 22:33:36 GMT</pubDate>
      <description>Martijn Boland provides us with a nice way to &lt;a href="http://blogs.taiga.nl/martijn/2011/05/03/keep-your-users-informed-with-asp-net-mvc/"&gt;display
message banners in an ASP.NET MVC application&lt;/a&gt;. I highly recommend checking out
his blog post and code sample.&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=e3582e67-e6c7-4e07-88fe-7659a17011b4" /&gt;</description>
      <comments>http://www.distribucon.com/blog/CommentView,guid,e3582e67-e6c7-4e07-88fe-7659a17011b4.aspx</comments>
      <category>ASP.NET</category>
    </item>
    <item>
      <trackback:ping>http://www.distribucon.com/blog/Trackback.aspx?guid=9e18df07-6e96-4a00-93a7-5e14727fe0ea</trackback:ping>
      <pingback:server>http://www.distribucon.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.distribucon.com/blog/PermaLink,guid,9e18df07-6e96-4a00-93a7-5e14727fe0ea.aspx</pingback:target>
      <dc:creator>Dan Miser</dc:creator>
      <wfw:comment>http://www.distribucon.com/blog/CommentView,guid,9e18df07-6e96-4a00-93a7-5e14727fe0ea.aspx</wfw:comment>
      <wfw:commentRss>http://www.distribucon.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=9e18df07-6e96-4a00-93a7-5e14727fe0ea</wfw:commentRss>
      <slash:comments>1</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">The Web Platform Installer (WPI) is really
nice when it works. But when it doesn't, it's a battle to the death to get things
to work. Case in point: I was trying to install php on my Windows 2008 Server through
WPI, but it would go on forever during the FastCGI install step. I looked at logs
and the Event Viewer, and searched google. A lot of people reported a similar problem,
but there was no definitive recipe to get past the problem. 
<p />
In the end, I just clicked on the link for FastCGI in the installation details window
of WPI, and installed that piece manually. It went through without a hitch. After
a restart (which the FastCGI installer required), I installed php from WPI, and it
installed the 4 remaining pieces without a hitch, and it did so quickly. So just a
note that if WPI starts acting up, just install the problematic piece manually and
then let WPI continue.<img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=9e18df07-6e96-4a00-93a7-5e14727fe0ea" /></body>
      <title>FastCGI install hangs when called from Web Platform Installer</title>
      <guid isPermaLink="false">http://www.distribucon.com/blog/PermaLink,guid,9e18df07-6e96-4a00-93a7-5e14727fe0ea.aspx</guid>
      <link>http://www.distribucon.com/blog/FastCGIInstallHangsWhenCalledFromWebPlatformInstaller.aspx</link>
      <pubDate>Tue, 22 Feb 2011 04:04:52 GMT</pubDate>
      <description>The Web Platform Installer (WPI) is really nice when it works. But when it doesn't, it's a battle to the death to get things to work. Case in point: I was trying to install php on my Windows 2008 Server through WPI, but it would go on forever during the FastCGI install step. I looked at logs and the Event Viewer, and searched google. A lot of people reported a similar problem, but there was no definitive recipe to get past the problem.
&lt;p /&gt;
In the end, I just clicked on the link for FastCGI in the installation details window
of WPI, and installed that piece manually. It went through without a hitch. After
a restart (which the FastCGI installer required), I installed php from WPI, and it
installed the 4 remaining pieces without a hitch, and it did so quickly. So just a
note that if WPI starts acting up, just install the problematic piece manually and
then let WPI continue.&lt;img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=9e18df07-6e96-4a00-93a7-5e14727fe0ea" /&gt;</description>
      <comments>http://www.distribucon.com/blog/CommentView,guid,9e18df07-6e96-4a00-93a7-5e14727fe0ea.aspx</comments>
      <category>.NET</category>
      <category>ASP.NET</category>
    </item>
    <item>
      <trackback:ping>http://www.distribucon.com/blog/Trackback.aspx?guid=3106007f-51be-47a7-93ed-650d1ee8f13a</trackback:ping>
      <pingback:server>http://www.distribucon.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.distribucon.com/blog/PermaLink,guid,3106007f-51be-47a7-93ed-650d1ee8f13a.aspx</pingback:target>
      <dc:creator>Dan Miser</dc:creator>
      <wfw:comment>http://www.distribucon.com/blog/CommentView,guid,3106007f-51be-47a7-93ed-650d1ee8f13a.aspx</wfw:comment>
      <wfw:commentRss>http://www.distribucon.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=3106007f-51be-47a7-93ed-650d1ee8f13a</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
For an ASP.NET MVC application, consider the following code fragment, where GetDetails
will return HTML markup:
</p>
        <pre>
          <code> &lt;%using (Ajax.BeginForm("GetDetails", new AjaxOptions { UpdateTargetId
= "result" })) { %&gt; &lt;input type="submit" /&gt; &lt;% } %&gt; &lt;span id="result"
/&gt; </code>
        </pre>
        <p />
This code works beautifully in Firefox and Chrome, but in IE (at least 7 and 8), it
ends up chewing up parts of the master page, wreaking havoc on the layout of the rendered
page. The problem is that the span tag is a void element (it only has a start tag).
If you physically specify the span as a start and end tag, e.g. <code>&lt;span id="result"&gt;&lt;/span&gt;</code>,
then the code will work fine in all 3 browsers. 
<p />
I was tempted to blame IE, and I still sort of do, but at least they're handling the
HTML spec properly. w3.org clearly specifies that <a href="http://www.w3.org/TR/html-markup/syntax.html" target="_blank">the
span tag is not allowed to be a void element</a> (search within the page for "void
element" to see the list of allowed void elements), and it's consistent on the <a href="http://www.w3.org/TR/html-markup/span.html#span" target="_blank">span
reference page</a>. The reason I still sort of blame IE is: 
<ol><li>
Mozilla and Chrome understand that a void span element can be expanded in to start
and end tags</li><li>
A void span element works just fine if it's enclosed in another HTML element, e.g. <code>&lt;td&gt;&lt;span
id="result" /&gt;&lt;/td&gt;</code> will display the returned HTML just fine</li><li>
When looking at the rendered page with IE Developer Tools, if a void span element
is encountered in a content page, they go back to the master page and stuff the rest
of the master page in the span. I guess they're free to implement malformed HTML anyway
they like, but this just seems crazy.</li></ol><p />
The takeaway: All of this due to a missing end tag for a span. Ugh!<img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=3106007f-51be-47a7-93ed-650d1ee8f13a" /></body>
      <title>SPAN tags in IE require end tags</title>
      <guid isPermaLink="false">http://www.distribucon.com/blog/PermaLink,guid,3106007f-51be-47a7-93ed-650d1ee8f13a.aspx</guid>
      <link>http://www.distribucon.com/blog/SPANTagsInIERequireEndTags.aspx</link>
      <pubDate>Wed, 02 Feb 2011 02:49:29 GMT</pubDate>
      <description>&lt;p&gt;
For an ASP.NET MVC application, consider the following code fragment, where GetDetails
will return HTML markup:
&lt;/p&gt;
&lt;pre&gt;&lt;code&gt; &amp;lt;%using (Ajax.BeginForm("GetDetails", new AjaxOptions { UpdateTargetId
= "result" })) { %&amp;gt; &amp;lt;input type="submit" /&amp;gt; &amp;lt;% } %&amp;gt; &amp;lt;span id="result"
/&amp;gt; &lt;/code&gt;&lt;/pre&gt;
&lt;p /&gt;
This code works beautifully in Firefox and Chrome, but in IE (at least 7 and 8), it
ends up chewing up parts of the master page, wreaking havoc on the layout of the rendered
page. The problem is that the span tag is a void element (it only has a start tag).
If you physically specify the span as a start and end tag, e.g. &lt;code&gt;&amp;lt;span id="result"&amp;gt;&amp;lt;/span&amp;gt;&lt;/code&gt;,
then the code will work fine in all 3 browsers. 
&lt;p /&gt;
I was tempted to blame IE, and I still sort of do, but at least they're handling the
HTML spec properly. w3.org clearly specifies that &lt;a href="http://www.w3.org/TR/html-markup/syntax.html" target="_blank"&gt;the
span tag is not allowed to be a void element&lt;/a&gt; (search within the page for "void
element" to see the list of allowed void elements), and it's consistent on the &lt;a href="http://www.w3.org/TR/html-markup/span.html#span" target="_blank"&gt;span
reference page&lt;/a&gt;. The reason I still sort of blame IE is: 
&lt;ol&gt;
&lt;li&gt;
Mozilla and Chrome understand that a void span element can be expanded in to start
and end tags&lt;/li&gt;
&lt;li&gt;
A void span element works just fine if it's enclosed in another HTML element, e.g. &lt;code&gt;&amp;lt;td&amp;gt;&amp;lt;span
id="result" /&amp;gt;&amp;lt;/td&amp;gt;&lt;/code&gt; will display the returned HTML just fine&lt;/li&gt;
&lt;li&gt;
When looking at the rendered page with IE Developer Tools, if a void span element
is encountered in a content page, they go back to the master page and stuff the rest
of the master page in the span. I guess they're free to implement malformed HTML anyway
they like, but this just seems crazy.&lt;/li&gt;
&lt;/ol&gt;
&lt;p /&gt;
The takeaway: All of this due to a missing end tag for a span. Ugh!&lt;img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=3106007f-51be-47a7-93ed-650d1ee8f13a" /&gt;</description>
      <comments>http://www.distribucon.com/blog/CommentView,guid,3106007f-51be-47a7-93ed-650d1ee8f13a.aspx</comments>
      <category>ASP.NET</category>
      <category>ASP.NET MVC</category>
    </item>
    <item>
      <trackback:ping>http://www.distribucon.com/blog/Trackback.aspx?guid=5428f2ef-4962-44e0-ba14-1f18cb8bedc3</trackback:ping>
      <pingback:server>http://www.distribucon.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.distribucon.com/blog/PermaLink,guid,5428f2ef-4962-44e0-ba14-1f18cb8bedc3.aspx</pingback:target>
      <dc:creator>Dan Miser</dc:creator>
      <wfw:comment>http://www.distribucon.com/blog/CommentView,guid,5428f2ef-4962-44e0-ba14-1f18cb8bedc3.aspx</wfw:comment>
      <wfw:commentRss>http://www.distribucon.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=5428f2ef-4962-44e0-ba14-1f18cb8bedc3</wfw:commentRss>
      <slash:comments>1</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">I've never been happier that I chose a
technology after today. I have a production web application built using ASP.NET MVC,
and it has been working with almost no issues for over a year now. As a matter of
fact, it is the cornerstone used to run our business. I've had the default blue skin
in use since day 1 (ya, ya, I know, I know. I've been so lazy, I haven't even switched
out to <a href="http://www.asp.net/MVC/Gallery/" target="_blank">pre-built templates</a>),
and we run the app on the iPhone. It works, but there's always pinching, zooming and
scrolling going on. I finally bit the bullet after thinking to myself "Why not create
a view tailored to the iPhone to enhance the experience?" one too many times. About
12 hours later, the entire application was done with an auto-detected, optimized look
and feel for the iPhone. I am now convinced that I've just been paid back with the
technical dividends for investing in ASP.NET MVC. :) 
<p />
To help the next guy out who walks down this path, here are all of the links that
I used during this process: 
<ul><li><a href="http://weblogs.asp.net/aaronlerch/archive/2008/06/08/rock-the-iphone-with-asp-net-mvc.aspx" target="_blank">Aaron
Lerch's seminal article</a> on using iUI</li><li><a href="http://code.google.com/p/iui/" target="_blank">iUI project home page</a> (Be
sure to use 0.31. It is lightning fast!)</li><li><a href="http://www.hanselman.com/blog/TheWeeklySourceCode28IPhoneWithASPNETMVCEdition.aspx" target="_blank">Scott
Hanselman's article</a> that introduced the auto-detect view engine</li><li><a href="http://www.k10design.net/articles/iui/" target="_blank">CW Zachary's article</a> that
gives some extensions to iUI (like tables, load/unload, and script/css execution)</li><li><a href="http://video.yahoo.com/watch/853528/3491272" target="_blank">Joe Hewitt's
introductory video</a>. Nice presentation, and the _replace nugget was worth the 15
minutes to watch it.</li></ul><img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=5428f2ef-4962-44e0-ba14-1f18cb8bedc3" /></body>
      <title>ASP.NET MVC on the iPhone</title>
      <guid isPermaLink="false">http://www.distribucon.com/blog/PermaLink,guid,5428f2ef-4962-44e0-ba14-1f18cb8bedc3.aspx</guid>
      <link>http://www.distribucon.com/blog/ASPNETMVCOnTheIPhone.aspx</link>
      <pubDate>Fri, 06 Nov 2009 23:44:02 GMT</pubDate>
      <description>I've never been happier that I chose a technology after today. I have a production web application built using ASP.NET MVC, and it has been working with almost no issues for over a year now. As a matter of fact, it is the cornerstone used to run our business. I've had the default blue skin in use since day 1 (ya, ya, I know, I know. I've been so lazy, I haven't even switched out to &lt;a href="http://www.asp.net/MVC/Gallery/" target="_blank"&gt;pre-built
templates&lt;/a&gt;), and we run the app on the iPhone. It works, but there's always pinching,
zooming and scrolling going on. I finally bit the bullet after thinking to myself
"Why not create a view tailored to the iPhone to enhance the experience?" one too
many times. About 12 hours later, the entire application was done with an auto-detected,
optimized look and feel for the iPhone. I am now convinced that I've just been paid
back with the technical dividends for investing in ASP.NET MVC. :) 
&lt;p /&gt;
To help the next guy out who walks down this path, here are all of the links that
I used during this process: 
&lt;ul&gt;
&lt;li&gt;
&lt;a href="http://weblogs.asp.net/aaronlerch/archive/2008/06/08/rock-the-iphone-with-asp-net-mvc.aspx" target="_blank"&gt;Aaron
Lerch's seminal article&lt;/a&gt; on using iUI&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://code.google.com/p/iui/" target="_blank"&gt;iUI project home page&lt;/a&gt; (Be
sure to use 0.31. It is lightning fast!)&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.hanselman.com/blog/TheWeeklySourceCode28IPhoneWithASPNETMVCEdition.aspx" target="_blank"&gt;Scott
Hanselman's article&lt;/a&gt; that introduced the auto-detect view engine&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://www.k10design.net/articles/iui/" target="_blank"&gt;CW Zachary's article&lt;/a&gt; that
gives some extensions to iUI (like tables, load/unload, and script/css execution)&lt;/li&gt;
&lt;li&gt;
&lt;a href="http://video.yahoo.com/watch/853528/3491272" target="_blank"&gt;Joe Hewitt's
introductory video&lt;/a&gt;. Nice presentation, and the _replace nugget was worth the 15
minutes to watch it.&lt;/li&gt;
&lt;/ul&gt;
&lt;img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=5428f2ef-4962-44e0-ba14-1f18cb8bedc3" /&gt;</description>
      <comments>http://www.distribucon.com/blog/CommentView,guid,5428f2ef-4962-44e0-ba14-1f18cb8bedc3.aspx</comments>
      <category>ASP.NET</category>
      <category>ASP.NET MVC</category>
    </item>
    <item>
      <trackback:ping>http://www.distribucon.com/blog/Trackback.aspx?guid=53f4be36-1d7b-43f7-8691-286b480ec9d2</trackback:ping>
      <pingback:server>http://www.distribucon.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.distribucon.com/blog/PermaLink,guid,53f4be36-1d7b-43f7-8691-286b480ec9d2.aspx</pingback:target>
      <dc:creator>Dan Miser</dc:creator>
      <wfw:comment>http://www.distribucon.com/blog/CommentView,guid,53f4be36-1d7b-43f7-8691-286b480ec9d2.aspx</wfw:comment>
      <wfw:commentRss>http://www.distribucon.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=53f4be36-1d7b-43f7-8691-286b480ec9d2</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">Since my <a href="http://www.distribucon.com/blog/PopulatingDateRanges.aspx" target="_blank">last
post</a>, the date has changed from October 9th to October 12th. The reason this is
important is that the functions that needed to calculate the date based on the current
date are now coming through a different code path. Before, everything worked great.
As of October 10th, not so much. The fix is simple - the getDate function was missing
the parentheses to make it a method call. The fix is quite simple and is listed below: <pre><code> var
day = (now.getDate() &lt; 10) ? "0" + now.getDate() : now.getDate(); </code></pre><img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=53f4be36-1d7b-43f7-8691-286b480ec9d2" /></body>
      <title>Populating Date Ranges, part 2</title>
      <guid isPermaLink="false">http://www.distribucon.com/blog/PermaLink,guid,53f4be36-1d7b-43f7-8691-286b480ec9d2.aspx</guid>
      <link>http://www.distribucon.com/blog/PopulatingDateRangesPart2.aspx</link>
      <pubDate>Tue, 13 Oct 2009 04:11:13 GMT</pubDate>
      <description>Since my &lt;a href="http://www.distribucon.com/blog/PopulatingDateRanges.aspx" target="_blank"&gt;last
post&lt;/a&gt;, the date has changed from October 9th to October 12th. The reason this is
important is that the functions that needed to calculate the date based on the current
date are now coming through a different code path. Before, everything worked great.
As of October 10th, not so much. The fix is simple - the getDate function was missing
the parentheses to make it a method call. The fix is quite simple and is listed below: &lt;pre&gt;&lt;code&gt; var
day = (now.getDate() &amp;lt; 10) ? "0" + now.getDate() : now.getDate(); &lt;/code&gt;&lt;/pre&gt;&lt;img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=53f4be36-1d7b-43f7-8691-286b480ec9d2" /&gt;</description>
      <comments>http://www.distribucon.com/blog/CommentView,guid,53f4be36-1d7b-43f7-8691-286b480ec9d2.aspx</comments>
      <category>ASP.NET</category>
      <category>ASP.NET MVC</category>
    </item>
    <item>
      <trackback:ping>http://www.distribucon.com/blog/Trackback.aspx?guid=691a0e72-3786-4810-ad90-d064e6090fac</trackback:ping>
      <pingback:server>http://www.distribucon.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.distribucon.com/blog/PermaLink,guid,691a0e72-3786-4810-ad90-d064e6090fac.aspx</pingback:target>
      <dc:creator>Dan Miser</dc:creator>
      <wfw:comment>http://www.distribucon.com/blog/CommentView,guid,691a0e72-3786-4810-ad90-d064e6090fac.aspx</wfw:comment>
      <wfw:commentRss>http://www.distribucon.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=691a0e72-3786-4810-ad90-d064e6090fac</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">I have several reports in my ASP.NET MVC
application that are date-oriented. I had start date and end date text boxes, and
things worked fine. What I really wanted was something that would allow those date
boxes to be populated with a variety of canned date ranges (e.g. Year to Date, Last
Month, etc.). I found just what I was looking for in a pure JavaScript implementation <a href="http://www.epalla.com/2009/06/using-javascript-to-calculate-dates/" target="_blank">here</a>. 
<p />
The one problem I found was that "Last Month" was being calculated incorrectly. Below
is the simple fix. Thanks to epalla for the original code. 
<p /><pre><code> // last month case "lastmo": // we need a new month variable for month-1,
also formatted correctly var lastmonth = ((month - 1) &lt; 10) ? "0" + (month - 1)
: (month - 1); startbox.value = lastmonth + "/01/" + year; // now grab the last day
of the month (30, 31? we don't know!) var moend = new Date(year, (month - 1), 0);
endbox.value = lastmonth + "/" + moend.getDate() + "/" + year; break; </code></pre><img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=691a0e72-3786-4810-ad90-d064e6090fac" /></body>
      <title>Populating Date Ranges</title>
      <guid isPermaLink="false">http://www.distribucon.com/blog/PermaLink,guid,691a0e72-3786-4810-ad90-d064e6090fac.aspx</guid>
      <link>http://www.distribucon.com/blog/PopulatingDateRanges.aspx</link>
      <pubDate>Fri, 09 Oct 2009 01:44:07 GMT</pubDate>
      <description>I have several reports in my ASP.NET MVC application that are date-oriented. I had start date and end date text boxes, and things worked fine. What I really wanted was something that would allow those date boxes to be populated with a variety of canned date ranges (e.g. Year to Date, Last Month, etc.). I found just what I was looking for in a pure JavaScript implementation &lt;a href="http://www.epalla.com/2009/06/using-javascript-to-calculate-dates/" target="_blank"&gt;here&lt;/a&gt;. 
&lt;p /&gt;
The one problem I found was that "Last Month" was being calculated incorrectly. Below
is the simple fix. Thanks to epalla for the original code. 
&lt;p /&gt;
&lt;pre&gt;&lt;code&gt; // last month case "lastmo": // we need a new month variable for month-1,
also formatted correctly var lastmonth = ((month - 1) &amp;lt; 10) ? "0" + (month - 1)
: (month - 1); startbox.value = lastmonth + "/01/" + year; // now grab the last day
of the month (30, 31? we don't know!) var moend = new Date(year, (month - 1), 0);
endbox.value = lastmonth + "/" + moend.getDate() + "/" + year; break; &lt;/code&gt;&lt;/pre&gt;&lt;img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=691a0e72-3786-4810-ad90-d064e6090fac" /&gt;</description>
      <comments>http://www.distribucon.com/blog/CommentView,guid,691a0e72-3786-4810-ad90-d064e6090fac.aspx</comments>
      <category>ASP.NET</category>
      <category>ASP.NET MVC</category>
    </item>
    <item>
      <trackback:ping>http://www.distribucon.com/blog/Trackback.aspx?guid=69291288-8de0-465b-899f-bd4eb95864dd</trackback:ping>
      <pingback:server>http://www.distribucon.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.distribucon.com/blog/PermaLink,guid,69291288-8de0-465b-899f-bd4eb95864dd.aspx</pingback:target>
      <dc:creator>Dan Miser</dc:creator>
      <wfw:comment>http://www.distribucon.com/blog/CommentView,guid,69291288-8de0-465b-899f-bd4eb95864dd.aspx</wfw:comment>
      <wfw:commentRss>http://www.distribucon.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=69291288-8de0-465b-899f-bd4eb95864dd</wfw:commentRss>
      <slash:comments>1</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
There were a few changes between ASP.NET MVC Beta and <a href="http://weblogs.asp.net/scottgu/archive/2009/01/27/asp-net-mvc-1-0-release-candidate-now-available.aspx" target="_blank">RC1</a> regarding
list binding. For background on list binding, look at <a href="http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx" target="_blank">Phil
Haack's excellent article</a>. Here are the changes that I saw, some good, and some
bad:
</p>
        <ul>
          <li>
You no longer need to specify the ".index" hidden field. This is good, as it's one
less hidden field to take care of. 
</li>
          <li>
Binding occurs automatically for lists of complex types, but you <strong>must</strong> have
contiguous numbering of the elements, starting with zero. This means that you can
no longer specify the index with things like key information. I'm not wild about this
change. 
</li>
          <li>
In the Beta release, binding would only occur for properties of IList. I've been using <a href="http://www.mindscape.co.nz/products/LightSpeed/default.aspx" target="_blank">LightSpeed</a> lately,
and that means my property looks like this: EntityCollection&lt;FooType&gt; FooProperty.
EntityCollection supports IList, but because it wasn't truly an IList in the class
declaration, the default binding didn't work. In the Beta release, I got around this
by adding a mirrored property of IList&lt;FooType&gt; and then copying the data over
to FooProperty in my controller method. 
</li>
          <li>
Nested property references, e.g. Foo.Bar, now get the resulting input id renamed to
Foo_Bar. This makes it easier to work with jQuery selectors on these elements.</li>
        </ul>
        <p>
All in all, I'm really liking the RC1 release. I'm looking forward to the release!
</p>
        <img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=69291288-8de0-465b-899f-bd4eb95864dd" />
      </body>
      <title>ASP.NET MVC RC1 - Binding a List</title>
      <guid isPermaLink="false">http://www.distribucon.com/blog/PermaLink,guid,69291288-8de0-465b-899f-bd4eb95864dd.aspx</guid>
      <link>http://www.distribucon.com/blog/ASPNETMVCRC1BindingAList.aspx</link>
      <pubDate>Thu, 29 Jan 2009 00:04:53 GMT</pubDate>
      <description>&lt;p&gt;
There were a few changes between ASP.NET MVC Beta and &lt;a href="http://weblogs.asp.net/scottgu/archive/2009/01/27/asp-net-mvc-1-0-release-candidate-now-available.aspx" target="_blank"&gt;RC1&lt;/a&gt; regarding
list binding. For background on list binding, look at &lt;a href="http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx" target="_blank"&gt;Phil
Haack's excellent article&lt;/a&gt;. Here are the changes that I saw, some good, and some
bad:
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
You no longer need to specify the ".index" hidden field. This is good, as it's one
less hidden field to take care of. 
&lt;li&gt;
Binding occurs automatically for lists of complex types, but you &lt;strong&gt;must&lt;/strong&gt; have
contiguous numbering of the elements, starting with zero. This means that you can
no longer specify the index with things like key information. I'm not wild about this
change. 
&lt;li&gt;
In the Beta release, binding would only occur for properties of IList. I've been using &lt;a href="http://www.mindscape.co.nz/products/LightSpeed/default.aspx" target="_blank"&gt;LightSpeed&lt;/a&gt; lately,
and that means my property looks like this: EntityCollection&amp;lt;FooType&amp;gt; FooProperty.
EntityCollection supports IList, but because it wasn't truly an IList in the class
declaration, the default binding didn't work. In the Beta release, I got around this
by adding a mirrored property of IList&amp;lt;FooType&amp;gt; and then copying the data over
to FooProperty in my controller method. 
&lt;li&gt;
Nested property references, e.g. Foo.Bar, now get the resulting input id renamed to
Foo_Bar. This makes it easier to work with jQuery selectors on these elements.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;
All in all, I'm really liking the RC1 release. I'm looking forward to the release!
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=69291288-8de0-465b-899f-bd4eb95864dd" /&gt;</description>
      <comments>http://www.distribucon.com/blog/CommentView,guid,69291288-8de0-465b-899f-bd4eb95864dd.aspx</comments>
      <category>ASP.NET</category>
    </item>
    <item>
      <trackback:ping>http://www.distribucon.com/blog/Trackback.aspx?guid=2a34aeb4-5ad5-4fdc-927d-9db5776cc560</trackback:ping>
      <pingback:server>http://www.distribucon.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.distribucon.com/blog/PermaLink,guid,2a34aeb4-5ad5-4fdc-927d-9db5776cc560.aspx</pingback:target>
      <dc:creator>Dan Miser</dc:creator>
      <wfw:comment>http://www.distribucon.com/blog/CommentView,guid,2a34aeb4-5ad5-4fdc-927d-9db5776cc560.aspx</wfw:comment>
      <wfw:commentRss>http://www.distribucon.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=2a34aeb4-5ad5-4fdc-927d-9db5776cc560</wfw:commentRss>
      <slash:comments>1</slash:comments>
      <body xmlns="http://www.w3.org/1999/xhtml">When deploying an ASP.NET web site to IIS
6 on a Windows 2003 server, you may encounter 404 errors when trying to access the
aspx pages. The quick solution is to Allow ASP.NET extenstions from the IIS Admin
Web Service Extensions node. Neil Kilbride has a much more comprehensive writeup on
this <a href="http://neilkilbride.blogspot.com/2008/02/windows-2003-iis-returns-404-for-aspnet.html" target="_blank">here</a>.<img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=2a34aeb4-5ad5-4fdc-927d-9db5776cc560" /></body>
      <title>IIS 6 returning 404 errors for ASPX pages</title>
      <guid isPermaLink="false">http://www.distribucon.com/blog/PermaLink,guid,2a34aeb4-5ad5-4fdc-927d-9db5776cc560.aspx</guid>
      <link>http://www.distribucon.com/blog/IIS6Returning404ErrorsForASPXPages.aspx</link>
      <pubDate>Fri, 16 May 2008 14:38:13 GMT</pubDate>
      <description>When deploying an ASP.NET web site to IIS 6 on a Windows 2003 server, you may encounter 404 errors when trying to access the aspx pages. The quick solution is to Allow ASP.NET extenstions from the IIS Admin Web Service Extensions node. Neil Kilbride has a much more comprehensive writeup on this &lt;a href="http://neilkilbride.blogspot.com/2008/02/windows-2003-iis-returns-404-for-aspnet.html" target="_blank"&gt;here&lt;/a&gt;.&lt;img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=2a34aeb4-5ad5-4fdc-927d-9db5776cc560" /&gt;</description>
      <comments>http://www.distribucon.com/blog/CommentView,guid,2a34aeb4-5ad5-4fdc-927d-9db5776cc560.aspx</comments>
      <category>ASP.NET</category>
    </item>
    <item>
      <trackback:ping>http://www.distribucon.com/blog/Trackback.aspx?guid=5ad392b6-edc9-42c3-8fff-467e1bdf7157</trackback:ping>
      <pingback:server>http://www.distribucon.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.distribucon.com/blog/PermaLink,guid,5ad392b6-edc9-42c3-8fff-467e1bdf7157.aspx</pingback:target>
      <dc:creator>Dan Miser</dc:creator>
      <wfw:comment>http://www.distribucon.com/blog/CommentView,guid,5ad392b6-edc9-42c3-8fff-467e1bdf7157.aspx</wfw:comment>
      <wfw:commentRss>http://www.distribucon.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=5ad392b6-edc9-42c3-8fff-467e1bdf7157</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
If you want to add Membership Provider features to your WebHost4Life application,
I've found that you can't use the aspnet_regsql wizard UI. Instead, use the following
code at the command prompt:
</p>
        <pre>
          <code> aspnet_regsql -C "Data Source=sqlNNN.mysite4now.com;Initial Catalog=yourdb;User
Id=yourUserName;Password=yourPwd" -A mr </code>
        </pre>
        <p>
Replace NNN with your assigned address, and obviously replace the other elements of
the above connection string, too. :-)<img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=5ad392b6-edc9-42c3-8fff-467e1bdf7157" /></p>
      </body>
      <title>Adding Membership Provider to WebHost4Life web apps</title>
      <guid isPermaLink="false">http://www.distribucon.com/blog/PermaLink,guid,5ad392b6-edc9-42c3-8fff-467e1bdf7157.aspx</guid>
      <link>http://www.distribucon.com/blog/AddingMembershipProviderToWebHost4LifeWebApps.aspx</link>
      <pubDate>Tue, 15 Apr 2008 21:12:01 GMT</pubDate>
      <description>&lt;p&gt;
If you want to add Membership Provider features to your WebHost4Life application,
I've found that you can't use the aspnet_regsql wizard UI. Instead, use the following
code at the command prompt:
&lt;/p&gt;
&lt;pre&gt;&lt;code&gt; aspnet_regsql -C "Data Source=sqlNNN.mysite4now.com;Initial Catalog=yourdb;User
Id=yourUserName;Password=yourPwd" -A mr &lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;
Replace NNN with your assigned address, and obviously replace the other elements of
the above connection string, too. :-)&lt;img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=5ad392b6-edc9-42c3-8fff-467e1bdf7157" /&gt;</description>
      <comments>http://www.distribucon.com/blog/CommentView,guid,5ad392b6-edc9-42c3-8fff-467e1bdf7157.aspx</comments>
      <category>.NET</category>
      <category>ASP.NET</category>
    </item>
    <item>
      <trackback:ping>http://www.distribucon.com/blog/Trackback.aspx?guid=5e13f744-b3bd-4847-ab0d-814187f61cdb</trackback:ping>
      <pingback:server>http://www.distribucon.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.distribucon.com/blog/PermaLink,guid,5e13f744-b3bd-4847-ab0d-814187f61cdb.aspx</pingback:target>
      <dc:creator>Dan Miser</dc:creator>
      <wfw:comment>http://www.distribucon.com/blog/CommentView,guid,5e13f744-b3bd-4847-ab0d-814187f61cdb.aspx</wfw:comment>
      <wfw:commentRss>http://www.distribucon.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=5e13f744-b3bd-4847-ab0d-814187f61cdb</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <link rel="stylesheet" type="text/css" href="/styles/csharp.css" />
        <p>
Problem: I have written my own membership provider to store and validate user information.
Further, I have a web page that allows a user to come and sign up with a username,
password, and a whole host of other client-related data. When the user submits that
data, I would like to have them logged in.
</p>
        <p>
Solution: Since I'm using Forms authentication for the ASP.NET website, it appears
that the following code-snippet does what I want:
</p>
        <pre class="csharpcode">
          <span class="kwrd">if</span> (Membership.ValidateUser(u.UserName,
u.Password)) FormsAuthentication.SetAuthCookie(u.UserName, <span class="kwrd">false</span>); </pre>
        <img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=5e13f744-b3bd-4847-ab0d-814187f61cdb" />
      </body>
      <title>Programmatic ASP.NET Login</title>
      <guid isPermaLink="false">http://www.distribucon.com/blog/PermaLink,guid,5e13f744-b3bd-4847-ab0d-814187f61cdb.aspx</guid>
      <link>http://www.distribucon.com/blog/ProgrammaticASPNETLogin.aspx</link>
      <pubDate>Tue, 25 Mar 2008 20:24:17 GMT</pubDate>
      <description>&lt;link rel="stylesheet" type="text/css" href="/styles/csharp.css"&gt;
&lt;p&gt;
Problem: I have written my own membership provider to store and validate user information.
Further, I have a web page that allows a user to come and sign up with a username,
password, and a whole host of other client-related data. When the user submits that
data, I would like to have them logged in.
&lt;/p&gt;
&lt;p&gt;
Solution: Since I'm using Forms authentication for the ASP.NET website, it appears
that the following code-snippet does what I want:
&lt;/p&gt;
&lt;pre class="csharpcode"&gt;&lt;span class="kwrd"&gt;if&lt;/span&gt; (Membership.ValidateUser(u.UserName,
u.Password)) FormsAuthentication.SetAuthCookie(u.UserName, &lt;span class="kwrd"&gt;false&lt;/span&gt;); &lt;/pre&gt;&lt;img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=5e13f744-b3bd-4847-ab0d-814187f61cdb" /&gt;</description>
      <comments>http://www.distribucon.com/blog/CommentView,guid,5e13f744-b3bd-4847-ab0d-814187f61cdb.aspx</comments>
      <category>.NET</category>
      <category>ASP.NET</category>
    </item>
    <item>
      <trackback:ping>http://www.distribucon.com/blog/Trackback.aspx?guid=04665464-7538-43ca-8d5e-83a1b7dd63df</trackback:ping>
      <pingback:server>http://www.distribucon.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.distribucon.com/blog/PermaLink,guid,04665464-7538-43ca-8d5e-83a1b7dd63df.aspx</pingback:target>
      <dc:creator>Dan Miser</dc:creator>
      <wfw:comment>http://www.distribucon.com/blog/CommentView,guid,04665464-7538-43ca-8d5e-83a1b7dd63df.aspx</wfw:comment>
      <wfw:commentRss>http://www.distribucon.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=04665464-7538-43ca-8d5e-83a1b7dd63df</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
          <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=38cc4cf1-773a-47e1-8125-ba3369bf54a3&amp;displaylang=en" target="_blank">ASP.NET
MVC Preview 2</a> was released yesterday. I've had a chance to install and play with
it, and I hate to report that I am underwhelmed. My thinking leads me to believe that
MS rushed this release out the door just to be able to say they shipped <em>something</em> at
MIX. While there has been good progress made on several issues (e.g. medium-trust
support, public methods are callable by default, and route setup is improved). However,
I find several other things lacking, referenced from <a href="http://weblogs.asp.net/scottgu/archive/2008/02/12/asp-net-mvc-framework-road-map-update.aspx" target="_blank">ScottGu</a>:
</p>
        <ol>
          <li>
Source code is not released. Sure, it might be coming "soon", but why not have everything
coordinated and ready to go? Hitting an arbitrary deadline of "ship while at MIX"
is less important to me than having answers to questions like these.</li>
          <li>
Dynamic Data (scaffolding) will not work with Preview 2. It is almost always inexcusable
to take functionality and features away. The ability to scaffold is one of <strong>the</strong> coolest
things in Rails. Having something similar in ASP.NET was a welcome treat. Now it's
gone. Again, I'm sure there is something that will be released "soon", but why not
have everything ready to go? I hate not only playing catch up years later, but having
a taste of it, only to have it yanked a few weeks later.</li>
          <li>
The "choose your unit testing framework" feature that was hyped up ships with only
MSTest enabled. I understand that MS is working to enlist support from the various
unit testing groups to <a href="http://blogs.msdn.com/webdevtools/archive/2008/02/18/asp-net-mvc-test-framework-integration.aspx" target="_blank">add
their tool to the list</a>, but it seems disingenuous to post mocked up screen shots
with test frameworks in a combo box that were never developed.</li>
          <li>
Others have pointed out some more detailed issues that need solving to help with testability
(e.g. see <a href="http://feeds.feedburner.com/~r/jeffreypalermo/~3/246302878/new-drop-of-asp-net-mvc-framework-now-available.aspx" target="_blank">here</a> and <a href="http://www.paulstovell.net/blog/index.php/recommended-reading-ihttpcontext-and-versioning/" target="_blank">here</a>). 
</li>
        </ol>
        <p>
I look forward to seeing these issues addressed ASAP because I absolutely <strong>LOVE</strong> the
promise that the MVC bits hold.
</p>
        <img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=04665464-7538-43ca-8d5e-83a1b7dd63df" />
      </body>
      <title>ASP.NET MVC Preview 2 looks rushed</title>
      <guid isPermaLink="false">http://www.distribucon.com/blog/PermaLink,guid,04665464-7538-43ca-8d5e-83a1b7dd63df.aspx</guid>
      <link>http://www.distribucon.com/blog/ASPNETMVCPreview2LooksRushed.aspx</link>
      <pubDate>Fri, 07 Mar 2008 19:30:33 GMT</pubDate>
      <description>&lt;p&gt;
&lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=38cc4cf1-773a-47e1-8125-ba3369bf54a3&amp;amp;displaylang=en" target="_blank"&gt;ASP.NET
MVC Preview 2&lt;/a&gt; was released yesterday. I've had a chance to install and play with
it, and I hate to report that I am underwhelmed. My thinking leads me to believe that
MS rushed this release out the door just to be able to say they shipped &lt;em&gt;something&lt;/em&gt; at
MIX. While there has been good progress made on several issues (e.g. medium-trust
support, public methods are callable by default, and route setup is improved). However,
I find several other things lacking, referenced from &lt;a href="http://weblogs.asp.net/scottgu/archive/2008/02/12/asp-net-mvc-framework-road-map-update.aspx" target="_blank"&gt;ScottGu&lt;/a&gt;:
&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
Source code is not released. Sure, it might be coming "soon", but why not have everything
coordinated and ready to go? Hitting an arbitrary deadline of "ship while at MIX"
is less important to me than having answers to questions like these.&lt;/li&gt;
&lt;li&gt;
Dynamic Data (scaffolding) will not work with Preview 2. It is almost always inexcusable
to take functionality and features away. The ability to scaffold is one of &lt;strong&gt;the&lt;/strong&gt; coolest
things in Rails. Having something similar in ASP.NET was a welcome treat. Now it's
gone. Again, I'm sure there is something that will be released "soon", but why not
have everything ready to go? I hate not only playing catch up years later, but having
a taste of it, only to have it yanked a few weeks later.&lt;/li&gt;
&lt;li&gt;
The "choose your unit testing framework" feature that was hyped up ships with only
MSTest enabled. I understand that MS is working to enlist support from the various
unit testing groups to &lt;a href="http://blogs.msdn.com/webdevtools/archive/2008/02/18/asp-net-mvc-test-framework-integration.aspx" target="_blank"&gt;add
their tool to the list&lt;/a&gt;, but it seems disingenuous to post mocked up screen shots
with test frameworks in a combo box that were never developed.&lt;/li&gt;
&lt;li&gt;
Others have pointed out some more detailed issues that need solving to help with testability
(e.g. see &lt;a href="http://feeds.feedburner.com/~r/jeffreypalermo/~3/246302878/new-drop-of-asp-net-mvc-framework-now-available.aspx" target="_blank"&gt;here&lt;/a&gt; and &lt;a href="http://www.paulstovell.net/blog/index.php/recommended-reading-ihttpcontext-and-versioning/" target="_blank"&gt;here&lt;/a&gt;). 
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;
I look forward to seeing these issues addressed ASAP because I absolutely &lt;strong&gt;LOVE&lt;/strong&gt; the
promise that the MVC bits hold.
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=04665464-7538-43ca-8d5e-83a1b7dd63df" /&gt;</description>
      <comments>http://www.distribucon.com/blog/CommentView,guid,04665464-7538-43ca-8d5e-83a1b7dd63df.aspx</comments>
      <category>.NET</category>
      <category>ALT.NET</category>
      <category>ASP.NET</category>
    </item>
    <item>
      <trackback:ping>http://www.distribucon.com/blog/Trackback.aspx?guid=d78e55cd-4acd-4ae3-819a-e63d9b6275df</trackback:ping>
      <pingback:server>http://www.distribucon.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.distribucon.com/blog/PermaLink,guid,d78e55cd-4acd-4ae3-819a-e63d9b6275df.aspx</pingback:target>
      <dc:creator>Dan Miser</dc:creator>
      <wfw:comment>http://www.distribucon.com/blog/CommentView,guid,d78e55cd-4acd-4ae3-819a-e63d9b6275df.aspx</wfw:comment>
      <wfw:commentRss>http://www.distribucon.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=d78e55cd-4acd-4ae3-819a-e63d9b6275df</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <p>
At the risk of another "Me, too!" post, I thought I'd highlight several links that
I have found to be helpful, and for a value-added bonus, talk about why this release
matters to me. Back in the day (oh boy, does that make me sound old!), I learned how
to program for the Internet by using straight HTML and Delphi to create CGI and ISAPI
extensions. In order to do this, you needed to be quite aware of how the actual protocols
worked, and what to do to make things behave as you'd expect. I stayed with web development
up until I was using COM objects (again, written in Delphi) from an ASP page. After
that, I wasn't into the web development scene much on a full-time basis.
</p>
        <p>
ASP.NET 1.0 and 2.0 came along, and I found them to be quite daunting. It seemed as
if it was framework built upon framework, layered with add-ins to do what I thought
used to be simple things. 
</p>
        <p>
It appears to me that there has been a resurgence to move away from the barrage of
constant abstractions, and to instead embrace the simplicity of the web (see the popularity
of REST, Rails, and the buzz around ASP.NET MVC for some examples of this). 
</p>
        <p>
So for me, the reason I am excited is that not only can I once again utilize my knowledge
about how the web works, but I can use it in new ways that will make my applications
even better (e.g. TDD, scaffolding, etc.). At any rate, here's the set of links that
I think matter for ASP.NET MVC: 
</p>
        <ul>
          <li>
            <a href="http://asp.net/downloads/3.5-extensions/" target="_blank">ASP.NET Extensions
download</a> - including the MVC bits 
</li>
          <li>
            <a href="http://asp.net/downloads/3.5-extensions/MVCToolkit.zip" target="_blank">MVC
Toolkit</a> - extra download to help with scaffolding (aka dynamic data controls) 
</li>
          <li>
Scott Guthrie's series of tutorials: <a href="http://weblogs.asp.net/scottgu/archive/2007/11/13/asp-net-mvc-framework-part-1.aspx" target="_blank">Part
1</a>, <a href="http://weblogs.asp.net/scottgu/archive/2007/12/03/asp-net-mvc-framework-part-2-url-routing.aspx" target="_blank">Part
2</a>, <a href="http://weblogs.asp.net/scottgu/archive/2007/12/06/asp-net-mvc-framework-part-3-passing-viewdata-from-controllers-to-views.aspx" target="_blank">Part
3</a>, and <a href="http://weblogs.asp.net/scottgu/archive/2007/12/09/asp-net-mvc-framework-part-4-handling-form-edit-and-post-scenarios.aspx" target="_blank">Part
4</a></li>
          <li>
            <a href="http://www.hanselman.com/blog/ASPNET35ExtensionsPlusMVCHowToScreencast.aspx" target="_blank">Scott
Hanselman's video tutorial on the MVC framework</a>
          </li>
          <li>
            <a href="http://haacked.com/" target="_blank">Phil Haack's blog</a> (good posts on
dependency injection and TDD, among others) 
</li>
          <li>
            <a href="http://blog.wekeroad.com/" target="_blank">Rob Conery's blog</a> (check out
the posts on the MVC UI helpers and REST) 
</li>
        </ul>
        <img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=d78e55cd-4acd-4ae3-819a-e63d9b6275df" />
      </body>
      <title>ASP.NET MVC CTP released</title>
      <guid isPermaLink="false">http://www.distribucon.com/blog/PermaLink,guid,d78e55cd-4acd-4ae3-819a-e63d9b6275df.aspx</guid>
      <link>http://www.distribucon.com/blog/ASPNETMVCCTPReleased.aspx</link>
      <pubDate>Mon, 10 Dec 2007 20:40:56 GMT</pubDate>
      <description>&lt;p&gt;
At the risk of another "Me, too!" post, I thought I'd highlight several links that
I have found to be helpful, and for a value-added bonus, talk about why this release
matters to me. Back in the day (oh boy, does that make me sound old!), I learned how
to program for the Internet by using straight HTML and Delphi to create CGI and ISAPI
extensions. In order to do this, you needed to be quite aware of how the actual protocols
worked, and what to do to make things behave as you'd expect. I stayed with web development
up until I was using COM objects (again, written in Delphi) from an ASP page. After
that, I wasn't into the web development scene much on a full-time basis.
&lt;/p&gt;
&lt;p&gt;
ASP.NET 1.0 and 2.0 came along, and I found them to be quite daunting. It seemed as
if it was framework built upon framework, layered with add-ins to do what I thought
used to be simple things. 
&lt;/p&gt;
&lt;p&gt;
It appears to me that there has been a resurgence to move away from the barrage of
constant abstractions, and to instead embrace the simplicity of the web (see the popularity
of REST, Rails, and the buzz around ASP.NET MVC for some examples of this). 
&lt;/p&gt;
&lt;p&gt;
So for me, the reason I am excited is that not only can I once again utilize my knowledge
about how the web works, but I can use it in new ways that will make my applications
even better (e.g. TDD, scaffolding, etc.). At any rate, here's the set of links that
I think matter for ASP.NET MVC: 
&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;a href="http://asp.net/downloads/3.5-extensions/" target="_blank"&gt;ASP.NET Extensions
download&lt;/a&gt; - including the MVC bits 
&lt;li&gt;
&lt;a href="http://asp.net/downloads/3.5-extensions/MVCToolkit.zip" target="_blank"&gt;MVC
Toolkit&lt;/a&gt; - extra download to help with scaffolding (aka dynamic data controls) 
&lt;li&gt;
Scott Guthrie's series of tutorials: &lt;a href="http://weblogs.asp.net/scottgu/archive/2007/11/13/asp-net-mvc-framework-part-1.aspx" target="_blank"&gt;Part
1&lt;/a&gt;, &lt;a href="http://weblogs.asp.net/scottgu/archive/2007/12/03/asp-net-mvc-framework-part-2-url-routing.aspx" target="_blank"&gt;Part
2&lt;/a&gt;, &lt;a href="http://weblogs.asp.net/scottgu/archive/2007/12/06/asp-net-mvc-framework-part-3-passing-viewdata-from-controllers-to-views.aspx" target="_blank"&gt;Part
3&lt;/a&gt;, and &lt;a href="http://weblogs.asp.net/scottgu/archive/2007/12/09/asp-net-mvc-framework-part-4-handling-form-edit-and-post-scenarios.aspx" target="_blank"&gt;Part
4&lt;/a&gt; 
&lt;li&gt;
&lt;a href="http://www.hanselman.com/blog/ASPNET35ExtensionsPlusMVCHowToScreencast.aspx" target="_blank"&gt;Scott
Hanselman's video tutorial on the MVC framework&lt;/a&gt; 
&lt;li&gt;
&lt;a href="http://haacked.com/" target="_blank"&gt;Phil Haack's blog&lt;/a&gt; (good posts on
dependency injection and TDD, among others) 
&lt;li&gt;
&lt;a href="http://blog.wekeroad.com/" target="_blank"&gt;Rob Conery's blog&lt;/a&gt; (check out
the posts on the MVC UI helpers and REST) 
&lt;/li&gt;
&lt;/ul&gt;
&lt;img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=d78e55cd-4acd-4ae3-819a-e63d9b6275df" /&gt;</description>
      <comments>http://www.distribucon.com/blog/CommentView,guid,d78e55cd-4acd-4ae3-819a-e63d9b6275df.aspx</comments>
      <category>.NET</category>
      <category>ASP.NET</category>
    </item>
    <item>
      <trackback:ping>http://www.distribucon.com/blog/Trackback.aspx?guid=60078661-4b30-44a3-ae3f-ff52b3983ba1</trackback:ping>
      <pingback:server>http://www.distribucon.com/blog/pingback.aspx</pingback:server>
      <pingback:target>http://www.distribucon.com/blog/PermaLink,guid,60078661-4b30-44a3-ae3f-ff52b3983ba1.aspx</pingback:target>
      <dc:creator>Dan Miser</dc:creator>
      <wfw:comment>http://www.distribucon.com/blog/CommentView,guid,60078661-4b30-44a3-ae3f-ff52b3983ba1.aspx</wfw:comment>
      <wfw:commentRss>http://www.distribucon.com/blog/SyndicationService.asmx/GetEntryCommentsRss?guid=60078661-4b30-44a3-ae3f-ff52b3983ba1</wfw:commentRss>
      <body xmlns="http://www.w3.org/1999/xhtml">I was getting a strange problem at a client's
site recently where on occasion, an ASP.NET application that called a web service
would throw different exceptions. The fact that I could claim "It works on my machine"
meant little consolation. Stranger still, when debugging the application, it would
blow up at different spots. When it finally blew up on a call to Response.Redirect,
the client suddenly remembered some code that he used in a similar situation before.
The theory was that there is some kind of misconfiguration in the servers somewhere,
so this should not be needed, but this work-around has since been added and no additional
errors have been reported. 
<p></p><pre><code><!--
{\rtf1\ansi\ansicpg\lang1024\noproof1252\uc1 \deff0{\fonttbl{\f0\fnil\fcharset0\fprq1 Consolas;}}{\colortbl;??\red0\green0\blue0;\red255\green255\blue255;\red0\green128\blue0;\red0\green0\blue255;\red43\green145\blue175;\red163\green21\blue21;}??\fs20             \cf3 // svc is a WebService that you would use in your ASP.NET application\par ??\cf0             svc.Proxy = \cf4 new\cf0  System.Net.\cf5 WebProxy\cf0 (\cf6 "127.0.0.1"\cf0 );\par ??            ((System.Net.\cf5 WebProxy\cf0 )svc.Proxy).BypassList = \cf4 new\cf0  \cf4 string\cf0 [] \{ \cf6 "NameOfLocalMachine"\cf0  \};\par ??}
--><div style="FONT-SIZE: 10pt; BACKGROUND: white; COLOR: black; FONT-FAMILY: consolas"><p style="MARGIN: 0px"><span style="COLOR: green">// svc is a WebService that you would use in your ASP.NET
application</span></p><p style="MARGIN: 0px">
svc.Proxy = <span style="COLOR: blue">new</span> System.Net.<span style="COLOR: #2b91af">WebProxy</span>(<span style="COLOR: #a31515">"127.0.0.1"</span>);
</p><p style="MARGIN: 0px">
((System.Net.<span style="COLOR: #2b91af">WebProxy</span>)svc.Proxy).BypassList = <span style="COLOR: blue">new</span><span style="COLOR: blue">string</span>[]
{ <span style="COLOR: #a31515">"NameOfLocalMachine"</span> };
</p></div></code></pre><img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=60078661-4b30-44a3-ae3f-ff52b3983ba1" /></body>
      <title>Bypassing proxy server configuration problems</title>
      <guid isPermaLink="false">http://www.distribucon.com/blog/PermaLink,guid,60078661-4b30-44a3-ae3f-ff52b3983ba1.aspx</guid>
      <link>http://www.distribucon.com/blog/BypassingProxyServerConfigurationProblems.aspx</link>
      <pubDate>Wed, 22 Aug 2007 18:02:12 GMT</pubDate>
      <description>I was getting a strange problem at a client's site recently where on occasion, an ASP.NET application that called a web service would throw different exceptions. The fact that I could claim "It works on my machine" meant little consolation. Stranger still, when debugging the application, it would blow up at different spots. When it finally blew up on a call to Response.Redirect, the client suddenly remembered some code that he used in a similar situation before. The theory was that there is some kind of misconfiguration in the servers somewhere, so this should not be needed, but this work-around has since been added and no additional errors have been reported. 
&lt;p&gt;
&lt;pre&gt;&lt;code&gt; 
&lt;!--
{\rtf1\ansi\ansicpg\lang1024\noproof1252\uc1 \deff0{\fonttbl{\f0\fnil\fcharset0\fprq1 Consolas;}}{\colortbl;??\red0\green0\blue0;\red255\green255\blue255;\red0\green128\blue0;\red0\green0\blue255;\red43\green145\blue175;\red163\green21\blue21;}??\fs20             \cf3 // svc is a WebService that you would use in your ASP.NET application\par ??\cf0             svc.Proxy = \cf4 new\cf0  System.Net.\cf5 WebProxy\cf0 (\cf6 "127.0.0.1"\cf0 );\par ??            ((System.Net.\cf5 WebProxy\cf0 )svc.Proxy).BypassList = \cf4 new\cf0  \cf4 string\cf0 [] \{ \cf6 "NameOfLocalMachine"\cf0  \};\par ??}
--&gt;
&lt;div style="FONT-SIZE: 10pt; BACKGROUND: white; COLOR: black; FONT-FAMILY: consolas"&gt;
&lt;p style="MARGIN: 0px"&gt;
&lt;span style="COLOR: green"&gt;// svc is a WebService that you would use in your ASP.NET
application&lt;/span&gt;
&lt;/p&gt;
&lt;p style="MARGIN: 0px"&gt;
svc.Proxy = &lt;span style="COLOR: blue"&gt;new&lt;/span&gt; System.Net.&lt;span style="COLOR: #2b91af"&gt;WebProxy&lt;/span&gt;(&lt;span style="COLOR: #a31515"&gt;"127.0.0.1"&lt;/span&gt;);
&lt;/p&gt;
&lt;p style="MARGIN: 0px"&gt;
((System.Net.&lt;span style="COLOR: #2b91af"&gt;WebProxy&lt;/span&gt;)svc.Proxy).BypassList = &lt;span style="COLOR: blue"&gt;new&lt;/span&gt; &lt;span style="COLOR: blue"&gt;string&lt;/span&gt;[]
{ &lt;span style="COLOR: #a31515"&gt;"NameOfLocalMachine"&lt;/span&gt; };
&lt;/p&gt;
&lt;/div&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;img width="0" height="0" src="http://www.distribucon.com/blog/aggbug.ashx?id=60078661-4b30-44a3-ae3f-ff52b3983ba1" /&gt;</description>
      <comments>http://www.distribucon.com/blog/CommentView,guid,60078661-4b30-44a3-ae3f-ff52b3983ba1.aspx</comments>
      <category>.NET</category>
      <category>ASP.NET</category>
    </item>
  </channel>
</rss>