DotNetSlackers Article: Easy XML to SQL with Linq

My latest DotNetSlackers article was published today: Easy XML to SQl with Linq.

Transferring data between partner companies is pretty routine, and XML is one of the common formats that data are transferred in. One of the more common destinations for the XML data is a SQL Server database. In the past, XML was difficult to work with, but the .NET framework improved XML parsing greatly. Linq to XML has made XML handling absolutely painless, and Linq to SQL makes entering the data just as easy.

This example isn’t meant to say this is the only way to transform XML into SQL, because like all things .NET, there are several ways to do this. This method may or may not work depending on your circumstances.

This article is based on my real world experiences using Linq-to-SQL, Linq-to-XML and the XML extensions in VB.NET to rapidly develop transformations of XML data into SQL Server databases.  This is an extremely common scenario in many businesses, and I wanted to highlight how easy it is.

VS2008 SP1 and .NET 3.5 SP1 Released

Old news by now, but SP1 is out with all sorts of glorious new features, except a good installation path.  If you have several machines to update with both VS2008 SP1 and .NET 3.5 SP1 (e.g., a team), you’ll want the ISO file, which can be tricky to find.  Direct link to combined installer .iso.  And, I use the awesome freeware ImgBurn to create the disks for my team.

I’ve seen a couple reports that the installation takes 3+ hours, but all told installation for me went 45 minutes.  I cheated, and downloaded the .NET 3.5 SP1 first (full package at http://download.microsoft.com/download/2/0/e/20e90413-712f-438c-988e-fdaa79a8ac3d/dotnetfx35.exe), installed that, then ran the combo installer. 

Greg has a great list of VS2008 things to download (including the MSDN update and training pack) at http://coolthingoftheday.blogspot.com/2008/08/visual-studio-2008-net-35-sp1-etc.html.

As always, make sure to remove any previous betas of the SP (both .NET and VS) you have installed.  I had the SP beta installed, and got rid of it from Add/Remove programs before I installed anything.  If you have any hotfixes installed, you need to remove those as well.  This time, there’s a hotfix removal tool.

Unlike Craig Shoemaker, I was not asked for the original media.  I installed the MSDN updates, too, which tool a little over 30 minutes themselves.  All told, you’re investing a couple hours for a full update.

Version Control via FTP

A few years ago, I was looking for a version control system that would be easy to implement and not cost a fortune.  I was splitting my time between my laptop and my desktop, and was always forgetting my thumb drive somewhere else.  I did not have a separate NAS device at the time, so that was out of the question.  I was paying for shared hosting, and was greatly underutilizing my disk space allotment.

Enter FtpVC, a version control system that works via FTP.  It was perfect for my needs!  I installed the client on both machines, configured it to use a folder on my hosting account, and got back to work.  Setup was very easy, and the shared hosting space was accessible to either machine, and offsite.  At $50, it was not a budget breaker, either.  All the usual version control features are there, including history and comparisons.  If you’re a lone ranger picking up the odd client job, or a small development shop, FtpVC could be a great solution for you.

There’s a new version out, and their announcement e-mail reminded me I should blog about it.  No relation other than happy customer.  As a matter of fact, I’ve since moved on to another solution, but I still recommend FtpVC as a lightweight and inexpensive way to get into version control.

Error: Could not load file or assembly ‘Microsoft.ReportViewer.WebForms, Version=9.0.0.0

The full error reads:



Parser Error Message: Could not load file or assembly ‘Microsoft.ReportViewer.WebForms, Version=9.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a’ or one of its dependencies. The system cannot find the file specified.


This error means you’re using the SQL Server Reporting Services ReportViewer control in your web application, and the server can’t find the proper DLL.  All you have to do is deploy them to your server.  With Visual Studio 2008, the location of the ReportViewer DLLs has changed.  You now find them at C:\Program Files\Microsoft Visual Studio 9.0\ReportViewer.


The first way to get these on your server, and this only works if you run your own server, is to directly copy them into the C:\Windows\assembly folder, and reboot the server (this reloads the GAC).  If a reboot is out of the question, you can use GACUTIL.EXE to copy and register the DLLs.


If you’re in a shared hosting environment, reference the DLLs from the VS 9 path listed above, and set the Copy Local=True (select the DLL and open the Properties tab).  This will copy the DLLs into your applications BIN folder, and look for them there first.  You can then deploy to a shared host, making sure to copy all the contents of BIN.

Launch 2008 Software Pack and Links

All attendees to a “Heroes Happen Here” Launch even receive a software pack, but it’s not without its limitations.  Here is what’s included, and restrictions:

  1. Windows 2008 Server, Enterprise Edition, both 32-bit and 64-bit.  Full version with keys, 1 year time bomb.
  2. SQL Server 2008.  This is a CTP, not the final release.  I’d avoid installing this on any machine you like–use a virtual machine or something you can throw away later.  There is a registration code in the pocket with the EULAs for a license of the final version.  No mention of a time bomb.  I just tried to register, and the site craps out when you submit your form.
  3. Visual Studio 2008 Standard Edition.  This is the version one step above Express.  It’s most notable feature limitation is the Office development.  That’s right–all that cool MOSS/Office 2007 integration and workflow they demonstrated, well, you can’t do that with this version (you need the Professional version at least).  A version comparison is at http://msdn2.microsoft.com/en-us/vs2008/products/cc149003.aspx.  No indication of a time bomb.
  4. Windows Vista Ultimate with SP1.  This was a nice surprise.  The full kitty, no expiration (the Windows Live One Care has a time limit, though).
  5. Microsoft Forefront and Microsoft System Center.  Two infrastructure tools marked as “Limited-Time Trial Software”, but no indication of the time limit.  Forefront is Microsoft’s network security suite, rolling up Antigen and other tools into one product.
  6. Windows Mobile 6 Developer Resource Kit.

Useful links from Launch:

If you want to review the presentations (or in our case, see them working), check out the Virtual Launch at http://www.microsoft.com/virtualevents/.  You need a Windows Live ID and Silverlight.  Apparently you can choose from several cities, but each time I selected something other than LA, I got a Silverlight error.

Download lab manuals for each demo at http://heroes.labmanuals.virtualwide.com/.  This is totally cool.  Get these and actually do what you saw (or would have seen if the demos didn’t keep crashing).  Subject to the limited features of the Standard version, unless you have a better version handy.

DotNetVideos.net Launches

Shiny new thing to eat up bandwidth!


I’m a solo developer in a corporate environment, so I’m really on my own to learn new things.  As good as blogs and books are, there’s sometimes no substitute for being shown how.  That’s why Microsoft highlights so many videos on its asp.net site.  ASP Alliance also has a growing library of videos.


Enter onto this list one more site–DotNetVideos.net.  Right now there are around 100 videos on a great number of topics.  Apparently there are a couple hundred more in the pipeline.  And, if you sign up now, you get 6 months of ASP.NET Pro magazine for free.  That alone is worth the sign-up.  ASP.NET Pro is one of my favorite trade mags (I have an online subscription, and have for several years).


When you’re Googling for info on whatever you’re working on, don’t forget to check out this site, too, and see if someone is showing you how it’s done.


Full disclosure: I was asked to say something about the new site, and I usually ignore such requests.  But after checking it it, it’s one I’ll be spending some time on, and recommending to others.


(edit – fixed links)