views:

448

answers:

2

I've just upgraded a VS 2008 project to VS 2010, converting the project but keeping the target as .NET 3.5 (SP1 is installed). My project worked without issue under VS 2008 on another machine.

I've added references to System.Web.Extensions.dll but I'm still getting the following errors from code in the App_Code folder:

1) Cannot find System.Web.Script.Service namespace.

2) Type 'System.Web.Script.Services.ScriptService' is not defined.

3) Type 'System.Runtime.Serialization.Json.DataContractJsonSerializer' is not defined.

Anyone have any ideas what the problem might be as I'm pretty stumped? :(

A: 
  • Check your web.config assembly entries.

  • Check your .NET Framework target in your Visual Studio 2010 project, default is 4.0

  • Check IIS, make sure you are using the appropriate framework for your site. The new .NET 4.0 install can change your default Framework to 4.0.

rick schott
Hi Rick, I already have these two entries:<add assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/><add assembly="System.Web.Extensions.Design, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/></assemblies>
Gavin
Hi Rick, cheers again but I'm already targeting 3.5 instead of 4.0. And I'm running the web site directly from VS 2010 so IIS shouldn't come in to play?
Gavin
Did your machine ever have Visual Studio 2010 Beta or RC? I had to manually remove some directories for the 2010 to work correctly.
rick schott
Hi Rick - thanks for your ideas once again! No, the machine has fresh installs of all the newest toys as I've just upgraded the hard drive and decided to start fresh: Windows 7, VS 2010, Office 2010, Expression 4.
Gavin
Oh, and I also installed SQL Server 2008 R2 before VS 2010 in case that has any relevance (probably not).
Gavin
A: 

Seems there's a bug from Microsoft where Target Framework for v3.5 in VS2010 is v3.0 of the GAC! Moving assemblies with issue to v3.0 folder seems to start resolving issues, but a bit messy. Think I'll wait for Microsoft to bring out a proper fix for VS 2010!

http://www.cnblogs.com/dudu/archive/2010/06/24/1764549.html

Google translate helps with this link!

More detail of assemblies copied to v3.0 folder from v3.5 folder as a work-around to this VS 2010 bug:

http://forums.asp.net/p/1569744/3942724.aspx

If anyone else is encountering this issue and wants to track / vote up the status of this bug with Microsoft: https://connect.microsoft.com/VisualStudio/feedback/details/570557/targeting-net-framework-3-5-actually-targets-3-0-gac

Gavin