Upgrade to 4.0: The type or namespace name 'Linq' does not exist in the namespace 'System' (are you missing an assembly reference?)

13,059

Solution 1

I have a ASP.NET 3.5 WebSite project which I've tried to upgrade to .NET v4. Got the error. My solution:

  1. Go to WebSite project property pages and set it back to . NET v3.5
  2. Compile and see all is OK
  3. Switch it back to .NET v4
  4. Compile and see all is OK

Solution 2

Have you chose the right framework. I think in your project file on the first tab ".NET Framework 4 Client Profile" is chosen. Take ".NET Framework 4"

Share:
13,059
Asdfg
Author by

Asdfg

Always trying to do the hard thing. Not necessarily the hard way.

Updated on June 04, 2022

Comments

  • Asdfg
    Asdfg almost 2 years

    I recently upgraded my solution from .net framework 3.5 to 4.0. All good except it gives me some errors in my website project.

    The type or namespace name 'Linq' does not exist in the namespace 'System' 
    (are you missing an assembly reference?)
    
    The type or namespace name 'Linq' does not exist in the namespace 'System.Xml'
    (are you missing an assembly reference?)
    
    The type or namespace name 'Script' does not exist in the namespace 'System.Web' 
    (are you missing an assembly reference?)
    

    Here is what my web.config looks like:

    <add assembly="System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    <add assembly="System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add assembly="System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
    <add assembly="System.Data.DataSetExtensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    <add assembly="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    <add assembly="System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
    <add assembly="System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
    <!--vjslib is needed for Google Transit-related code-->
    <add assembly="vjslib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
    <add assembly="Infragistics35.WebUI.Shared.v10.2, Version=10.2.20102.1011, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb"/>
    <add assembly="Infragistics35.WebUI.UltraWebGrid.v10.2, Version=10.2.20102.1011, Culture=neutral, PublicKeyToken=7dd5c3163f2cd0cb"/>
    <add assembly="Infragistics35.WebUI.UltraWebTab.v10.2, Version=10.2.20102.1011, Culture=neutral, PublicKeyToken=7DD5C3163F2CD0CB"/>
    <add assembly="Infragistics35.Web.v10.2, Version=10.2.20102.1011, Culture=neutral, PublicKeyToken=7DD5C3163F2CD0CB"/>
    <add assembly="System.Web.Mobile, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"/>
    <add assembly="mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    <add assembly="System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    <add assembly="System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    <add assembly="System.Xml.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
    

    Why is it not able to find LINQ reference when i say using System.Linq or System.Xml.Linq? What am i missing here?

    --Edit--

    This happens only in website project. Other class libraries work fine.