HttpUtility wird in .Net 4.5 nicht erkannt

8

Ich habe eine WinForm-Anwendung entwickelt, deren Zielframework auf .net 4.0 eingestellt ist. Jetzt möchte ich ein Projekt hinzufügen, dessen Zielframework auf .net 4.5 eingestellt ist. Nachdem ich die 4.0 WinForm-Anwendung zu meinem 4.5-Projekt hinzugefügt habe, bekomme ich einen Fehler auf meinem HttpUtility-Objekt.

%Vor%

"Der Name 'HttpUtility' existiert nicht im aktuellen Kontext"

Ich habe den System.Web-Namespace aufgenommen, in dem sich die HttpUtility befindet.

Visual Studio Fehler:

%Vor%
    
Marnus_Steyn 12.01.2015, 08:56
quelle

4 Antworten

27

Das Problem ist woanders.

Wie Sie in MSDN sehen können Die Klasse HttpUtility ist in System.Web in .NET Framework 4.5 vorhanden.

Sie zielen wahrscheinlich auf das Client-Profil: Zielen Sie auf das vollständige Framework in den Projekteigenschaften. Ansonsten:

  • Entweder Sie haben nicht die richtige using-Anweisung using System.Web; hinzugefügt
  • oder Sie haben den Verweis auf System.Web.dll im Projekt nicht hinzugefügt.
giammin 12.01.2015, 09:00
quelle
3

Die HttpUtility Klasse existiert von .NET 1.1, daher ist es meiner Meinung nach nicht möglich, dass reguläre Projekte 'nicht sehen', solange Sie einen Verweis auf System.Web eingefügt haben.

Sie verwenden möglicherweise eine PCL ( Portable Class Library ), die eine abgespeckte Version des Frameworks verwendet, die auf den ausgewählten Plattformen wie Windows Store-Apps, Windows Phone, Silverlight usw. unterstützt wird.

    
Patrick Hofman 12.01.2015 08:58
quelle
0

Ich hoffe, dass dieser Link Ihnen helfen wird. Ссылка Dot net framework 4.5 unterstützt HttpUtility so wie es unter System.Web Namespace ist. Fügen Sie auch eine System.Web-Referenz ohne System.Web.Extensions-Referenz in Ihr Projekt hinzu. Wenn es nicht funktioniert, entfernen Sie den vorhandenen und fügen Sie einen neuen Verweis von System.Web in das Projekt hinzu. Überprüfen Sie auch, auf welches Framework es ausgerichtet sein soll. NET Framework 4 oder 4.5 ohne Client.

    
Rahul 12.01.2015 09:33
quelle
0

WebUtility

Sie haben auch noch eine andere Möglichkeit: Verwenden Sie die WebUtility-Klasse . Die Klasse WebUtility wird von Microsoft selbst empfohlen und sollte außerhalb von Webanwendungen verwendet werden.

Wie die Klasse HttpUtility bietet es Ihnen auch die Möglichkeit, URLs zu codieren und zu dekodieren.

Auf diese Weise haben Sie keine Probleme beim Importieren der Bibliothek in Ihr Projekt oder beim Festlegen bestimmter Profile.

Aus der Dokumentation ( Quelle )

  

Die HttpUtility-Klasse wird intern von der HttpServerUtility-Klasse verwendet, deren Methoden und Eigenschaften über das eigentliche ASP.NET-Serverobjekt verfügbar gemacht werden. Darüber hinaus enthält die HttpUtility-Klasse Methoden zum Codieren und Decodieren, auf die vom Server aus nicht zugegriffen werden kann.

     

Verwenden Sie zum Codieren oder Decodieren von Werten außerhalb einer Webanwendung die WebUtility-Klasse.

    
kamwo 03.07.2017 10:09
quelle

Tags und Links