Importați spațiul Namespace System.Query

Încerc să încarc Linq pe serverul meu .Net 3.5 activat prin adăugarea următorului articol la pagina mea .aspx:

<%@ Import Namespace="System.Query" %>

Cu toate acestea, acest lucru nu reușește și îmi spune că nu poate găsi spațiul de nume.

Numele sau denumirea spațiilor de nume "Interogare" nu există în spațiul de nume "Sistem"

Am încercat, de asemenea, fără noroc:

  • System.Data.Linq
  • System.Linq
  • System.Xml.Linq

Cred că .Net 3.5 funcționează deoarece pare să funcționeze var hello = "Hello World" .

Poate cineva să vă ajute?

PS: Doresc doar să clarific faptul că nu folosesc Visual Studio, pur și simplu am Editor de text și scrieți-mi codul direct în fișiere .aspx.

0
fr hi bn

6 răspunsuri

Am gasit raspunsul :) Am avut nevoie sa adaug urmatoarele lucruri la web.config:

  
      
      
      
      
    

Apoi aș putea adăuga următoarele la codul meu:

<%@ Import Namespace="System.Linq" %>

@Voi,

Multumesc pentru ajutor. Am acceptat unul dintre răspunsurile dvs. :)

0
adăugat

Cum arată partea din fișierul dvs. web.config?

Iata cum arata un nou proiect ASP.NET 3.5 realizat cu Visual Studio 2008:


  
  
  
  

0
adăugat

Chestia var hello este compilarea magică și va funcționa fără Linq.

Try adding a reference to System.Core


Scuze, nu am fost clar. Am vrut să adaug System.Core la referințele proiectului web, nu la pagină.

Codul Import din pagină se bazează doar pe instrucțiuni, permițându-vă să săriți spațiul de nume pe pagină.

0
adăugat
Hi Keith, adăugând: <% @ Import Namespace = "System.Core"%> nu a reușit să funcționeze și a arătat același mesaj de eroare :( Orice alte idei?
adăugat autor GateKiller, sursa
Da, am trecut prin acel pas. După cum am spus, cred că 3.5 funcționează deoarece sintaxa var string = "hello"; funcționează deoarece aceasta este o nouă caracteristică a .Net 3.5. Acum sunt complet pierdut. PS: Multumesc pentru ajutor :)
adăugat autor GateKiller, sursa
Keith vorbea despre adăugarea unei referințe DLL, mai degrabă decât despre alt import. Pentru a fi sincer, v-aș sugera să începeți cu Visual Studio (una dintre versiunile gratuite), deoarece vă va perfecționa astfel de lucruri până când veți deveni puțin mai rapid cu dezvoltarea .NET.
adăugat autor Will Dean, sursa
var string = "hello"; funcționează deoarece aceasta este o nouă caracteristică a .Net 3.5. Deoarece cel puțin două persoane au încercat deja să vă spună aici, b> Nu este o caracteristică a .NET 3.5 Este o caracteristică a C# 3, care este versiunea limbajului acceptat de compilatorul care vine cu VS2008. Mi se pare greu să cred că ați citit și ați înțeles acest articol Hanselman, care pare să acopere exact ceea ce încercați să faceți.
adăugat autor Will Dean, sursa

Asigurați-vă că proiectul dvs. este setat la ținta 3.5 și nu la 2.0.

După cum au spus și alții, testul dvs. "var" este un test al C# 3 (adică VS2008), nu al cadrului 3.5.

Dacă setați corect setările țintă pentru proiectul de proiect, nu trebuie să vă așteptați să adăugați manual referințe dll în acest moment.

0
adăugat
Salut, nu folosesc VS. Există vreo altă modalitate prin care pot confirma dacă 3.5 este instalat corect?
adăugat autor GateKiller, sursa
Am selectat versiunea 2 în IIS și web.config-ul meu arată Version = 2.0.0.0 . Ajutor :(
adăugat autor GateKiller, sursa
Ce versiune a cadrului ați selectat în fila ASP.NET din IIS?
adăugat autor Will Dean, sursa

Am selectat versiunea 2 în IIS și eu

Bine, asta e problema ta? Selectați 3.5.

De fapt, iată adevărata informație:

http://www.hanselman.com/blog/HowToSetAnIISApplicationOrAppPoolToUseASPNET35RatherThan20.aspx

0
adăugat

Fișierul csproj ar putea să lipsească referința System.Core. Căutați o linie în fișierul csproj după cum urmează:


Și adăugați o linie sub ea așa:


0
adăugat