HttpUtility non esiste nel contesto corrente


99

Ottengo questo errore durante la compilazione di un'applicazione C #. Sembra un errore banale, ma non riesco a aggirarlo.

La mia configurazione è Windows 7 64 bit. Visual-Studio 2010 C # express B2Rel.

Ho aggiunto un riferimento a System.Web.dll situato in C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0, ma ha un simbolo esclamativo giallo e ricevo ancora l'errore precedente. Ho anche la using System.Webdichiarazione.

Che cosa sto facendo di sbagliato?


Aggiornamento: dopo aver ottenuto la risposta rapida che mi indicava la causa principale, ho cercato un po 'su Google dove si afferma che System.Web.dll è per il framework completo. Non ho trovato un tale riferimento.
Per i neofiti come me, questo blog riassume bene la differenza tra i framework (client e full). Non sono riuscito a trovare un punto che dica se una determinata DLL è supportata o meno nel framework del client. Immagino che il punto esclamativo in Visual Studio dovrebbe essere il primo segnale ...


2
Stai mirando al profilo del cliente?
— SLaks

Risposte:


87

Probabilmente stai prendendo di mira il profilo del cliente, in cui System.Web.dllnon è disponibile.

Puoi indirizzare il framework completo nelle Proprietà del progetto .


13
Bingo! dove è specificato? Dove avrei dovuto leggerlo? Grazie.
— Shaihi

Ho impostato il framework completo nelle proprietà del progetto, ma il problema esiste.
— Alex Jolig

@AlexJolig: assicurati di avere il riferimento e lo spazio dei nomi.
— SLaks

@ blackholeearth0_gmail: qual è il problema? Cosa stai mirando?
— SLaks

ho convertito il progetto da .net2 a .net4. solo cambiare Target Framework non ha risolto il problema. dovevo aggiungere anche la dll. che è spiegato meglio nella risposta di lxk613 e mostra cosa devo fare per risolvere il problema.
— bh_earth0

188

Devi aggiungere il System.Webriferimento;

  1. Fare clic con il pulsante destro del mouse su "Riferimento" in Esplora soluzioni
  2. Scegli "Aggiungi riferimento"
  3. Verificare che la scheda ".NET" sia selezionata.
  4. Cerca e aggiungi "System.Web".

App console VS2012 che utilizza come destinazione .NET Framework 4.5. Questo risolto.
— Kyle

Anche con l'obiettivo, solo l'aggiunta di riferimenti ha funzionato per me. Grazie lxk613
— João Bruno Abou Hatem de Liz

Bingo! Questa è la risposta.
— Alper

Il mio albero di esplorazione della soluzione non contiene "Riferimento"
— Paul Gorbas

se stai usando le funzioni di Azure, aggiungi #r "System.Web" sopra il tuo file
— Irshad Mohamed

17

SLaks ha la risposta giusta ... ma lasciami essere un po 'più specifico per le persone, come me, che sono infastidite da questo e non riescono a trovarlo subito:

Progetto -> Proprietà -> Applicazione -> Framework di destinazione -> seleziona ".Net Framework 4"

il progetto verrà quindi salvato e ricaricato.


6
Ho avuto l'errore anche CON il framework completo mirato! Tuttavia, l'aggiunta di System.Web.dll come riferimento ha funzionato.
— SteveCav

E ovviamente assicurati di aggiungere System.Webo anche System.Web.Mvcal file in questione.
— TankorSmash

15

Per risolvere questo problema, vai gentilmente al percorso sottostante

Progetto -> Proprietà -> Applicazione -> TargetFramework

e modificare il Framework in ".NET Framework 4".

Una volta fatto questo, il progetto si chiuderà e si riaprirà.

Questo dovrebbe risolvere l'errore

(ma per qualche motivo la risposta di @Karan Modi non lo fa ...)

quindi fare clic con il pulsante destro del mouse sulla scheda riferimenti in Esplora soluzioni e scegliere aggiungi riferimento,

scegli "System.Web"

(dichiarare lo spazio dei nomi direttamente con "using System.Web;" non sembra essere sufficiente ... devi aggiungerlo a Esplora soluzioni ... non riesco a capire perché - il che non sorprende perché sono un programmatore cobol ..


12

Dopo aver seguito le risposte di cui sopra, e lo ha fatto

Progetto -> Proprietà -> Applicazione -> Framework di destinazione -> seleziona ".Net Framework 4"

Continuava a non funzionare finché non sono andato a
Project -> Add Reference
E selezionato System.web. E tutto ha funzionato collega un fascino.


La stessa soluzione è già stata fornita da qualcuno, 2 anni fa. Si prega di controllare le soluzioni prima di pubblicare il proprio. La domanda è troppo vecchia ed è meno probabile che il poster originale noti la tua risposta.
— Tecnico,

Sembra la risposta di @ lxk613
— Shaihi

8

Per risolvere questo problema, vai gentilmente al percorso sottostante

Progetto -> Proprietà -> Applicazione -> TargetFramework

e modificare il Framework in ".NET Framework 4".

Una volta fatto questo, il progetto si chiuderà e si riaprirà.

Questo dovrebbe risolvere l'errore.


su Mac, Target Framework max (grazie a mono) è .NET 2. Come posso risolvere lì?
— Chris M

4

Agrega System.web a las referencias del proyecto.

[Modificare]

Secondo Google Translate, questo si traduce in:

Aggiungi System.Web ai riferimenti del progetto.


1

Ho avuto lo stesso problema di quello che ho fatto, ho copiato web.dll da Microsoft.NET framework, quindi incollo nella radice del progetto, quindi ho aggiunto dll refrence all'app, ha funzionato


1

L'aggiunta di un riferimento a Sysem.Web.Dll lo ha fatto per me.


0

Ha funzionato seguendo il processo:

Aggiungi riferimento:

system.net
system.web

inoltre, includi lo spazio dei nomi

using system.net
using system.web
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.