Domanda

Quando ho aperto un sito web Asp Net di mine in Visual Studio 2010 le proprietà dicono "Target Framework 3.5", tuttavia quando provo a utilizzare lo spazio dei nomi Linq il compilatore si lamenta su di esso.

"Il tipo o dello spazio dei nomi il nome 'var' non è stato trovato (che le manca un un riferimento all'assembly direttiva using o?)"

"Il tipo o dello spazio dei nomi il nome 'Linq' non esiste nello spazio dei nomi 'Sistema' (che le manca un riferimento all'assembly?)"

I riferimento manualmente alcuni DLL per risolvere il mio problema, ma ancora senza successo.

<add assembly="System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Data.DataSetExtensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Data.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>

Aiuto? : -)

È stato utile?

Soluzione

Se non è possibile anche utilizzare var, che suggerisce che non è nemmeno utilizzando la versione giusta del compilatore C #. (Si dovrebbe essere in grado di utilizzare var anche quando mira NET 2.0, fino a quando si sta utilizzando il C # 3 o C # 4 compilatore.) Avrei concentrarsi su come ottenere che il lavoro prima di ogni altra cosa.

E 'possibile che si sta eseguendo su IIS, ma non avete che configurato in modo appropriato? Potrebbe valere la pena guardare la configurazione del sito web intorno a quel lato delle cose, ed eventualmente eseguire nuovamente aspnet_regiis.

Altri suggerimenti

Ho appena risolto un problema simile aggiungendo un attributo targetFramework="4.0" all'elemento compilation in web.config

Il frammento rilevanti modificata è:

<compilation debug="true" targetFramework="4.0">
  <assemblies>
    <add assembly="System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
  </assemblies>
</compilation>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top