Is your TableServiceContext missing IgnoreResourceNotFoundException when building with .NET Framework 3.5 System.Data.Services.Client.dll?

If you are developing code with Azure tables, and building against .NET 3.5 DLLs, you may encounter a compilation error like this:

“The name ‘IgnoreResourceNotFoundException’ does not exist in the current context”

At LeanSentry, we do a lot of custom Azure development to power our scalable data backend.  Now, most of our codebase is using .NET 4.0, but some core libraries still build with 3.5 to allow them to run in more environments. So we periodically run into this problem when moving to new dev machines, and each time this issue causes an hour or more of extreme frustration. Surprisingly there is still nothing I could find on Google about this. So I figured I should blog about it here to save everyone else the trouble.

This happens because you are missing an update to the ADO.NET Data Services framework in .NET Framework 3.5 SP1 (which is now included as part of the OS in Windows 7). Windows Update does not automatically install this update. To make matters worse, the updates that are referenced by various sources online don’t actually apply to Windows 7 and won’t install there.

If you go and check your referenced assembly versions, if you have this update you should see this:

> filever “C:Program Files (x86)Reference AssembliesMicrosoftFrameworkv3.5System.Data.Services.Client.dll”

–a– W32i DLL ENU 3.5.30729.5420 shp 462,848 11-04-2010 system.data.services.client.dll

If instead you see an older version of the DLL, you likely have this problem.

To fix, you need to install this:

http://www.microsoft.com/en-us/download/details.aspx?id=2343, also known as KBKB976127.

Hope this saves some else the headache 🙂

Best,
Mike

One Comment

Leave a Reply

Your email address will not be published. Required fields are marked *