Scott Forsyth's Blog

Postings on IIS, ASP.NET, SQL Server, Webfarms and general system admin.

  • Enabling Windows Vista Aero Glass

    I've been running Vista Beta 2 (Build 5384) for a few days now but the Aero Glass wasn't enabled for me.  The Aero Glass gives Windows-Key Tab 3D switching between windows, the hover over the start menu items shows a cool live screenshot of the window, and the regular Alt-Tab is enhanced.  There are other 3D and enhanced visual affects as well.

  • MIX06, Atlas and an ORCS Web plug

    I had the opportunity to attend Mix06 in Las Vegas a couple weeks ago.  What a great conference!  While it didn't dive in as deep as some other conferences, the overview of technologies, the networking, and the level of people that were there made this conference well worthwhile.  My favorite session was the Microsoft.com and Myspace.com guys discussing their webfarm configurations.  Msn.com (managed by the Microsoft.com team) and Myspace.com are two of the top 5 most popular websites at the moment. 
     
    The technology that has received a lot of buzz in the last number of months is AJAX (Asynchronous JavaScript and XML).  Mature AJAX-enabled sites are popping up all over the place.  While the technology has been available for a few years now (ever since JavaScript was included and enabled by default on most web browsers) it has only been fairly recently that the momentum has really picked up.  Sites like maps.google.com, and Microsoft's new www.live.com have proven how impressive is can be. 
     
    For those that aren't familiar with it, AJAX allows a webpage to only update the part of a page that needs to be updated.  The rest of the page doesn't do a round-trip (postback) to the server.  For example, with maps.google.com you can drag your mouse around and watch the map appear as you move around.  That was obviously not preloaded into your computer, but it will pull the images back from the server as you request them.
     
    In March, on the first day of the MIX06 conference, Microsoft released a public version of 'Atlas', their framework to AJAX-enable a website.  Another version was released in April and as of two days ago, April 13th, the CTP (community tech preview) of Atlas Control Toolkit was released which includes an impressive set of AJAX controls.  Scott Guthrie says they are planning to have between 50 - 100 high-quality Atlas controls over the next few months: http://weblogs.asp.net/scottgu/archive/2006/04/13/442793.aspx
     
    Take a minute and try the a demo of the Toolkit samples, you'll be impressed: http://atlas.asp.net/atlastoolkit/CascadingDropDown/CascadingDropDown.aspx
     
    Does ORCS Web support AJAX and Atlas?  Of course . . .  although we can't take much credit because it works on ASP.NET out of the box.  In fact, much of Atlas is a set of JavaScript libraries that will work on other platforms besides ASP.NET.  Just the same, we won't miss the opportunity to take credit for once again having our servers cutting edge and ready for whatever the latest technologies throw our direction.  You can start to AJAX enable your applications on any of our web servers today.  Enjoy!

  • ASP.NET files and inheritance

    I've been completely silent on my blog for a few months while having my head down in projects, but I thought I should start up some activity, even if it's a quickie.  I feel that I've been covering so much ground but not enough time to report on it.

  • Schema Changes in the latest ASP.NET V2.0 bits

    I just installed the latest version of Visual Studio 2005 and the .NET Framework.  I went from version v2.0.50215 (common February version) to v2.0.50727 (August version).  The install went smooth and everything was good for the most part.

    One issue I ran into though is that the Membership provider didn't work.  I received an error "Procedure or function aspnet_Membership_GetPasswordWithFormat has too many arguments specified.".  Fortunately the error is descriptive enough to be quite obvious.  The database schema has changed slightly between the two builds.  I am using a SQL 2000 database that was prepared using the v2.0.50215 aspnet_regsql.exe tool so the latest version of the framework doesn't match with the schema on the database.

    The difficult way
    To let you learn from my mistakes, I'll explain what I tried at first.  To upgrade I created a backup of the database, ran the v2.0.50727 aspnet_regsql.exe tool to remove the schema with the goal to ran it again to create the schema back again.  The first issue was the v2.0.50727 aspnet_regsql.exe tool ran into errors removing the schema which was created using v2.0.50215.  After some manual adjustments I was able to complete it.  Then I ran aspnet_regsql.exe again to create the schema on the new database.  I then copied over just the relevant data from the backup database to the new live database.  This worked fine but it was a lengthy process.

    The better way
    I'm kicking myself for not thinking of it before but as an experiment I created a test database using the old v2.0.215 schema and ran the aspnet_regsql.exe tool, but this time I just selected the option to "Configure SQL Server for application services".  Sure enough it upgraded everything and didn't mess with my data.  The ASP.NET team made upgrading between minor versions almost too easy.

    Conclusion
    When upgrading to a newer version of the ASP.NET framework, simply run the aspnet_regsql.exe tool and select "Configure SQL Server for application services."  It serves as an upgrade option.

    I'm not promising that this will work between all minor upgrades, but it did work between this one.  Warning: Make sure to create a backup of your database before any of these changes, even if it has worked properly in the past.  Any large change of any sort should be preceded by a fresh backup of the database.