Pourquoi ne puis-je pas trouver ou utiliser UrlEncode dans Visual Studio 2010?
J'ai une chaîne que j'aimerais encoder dans le format d'URL standard. De ce que j'ai trouvé, je devrais être capable de le faire via la httpUtility.urlEncode
méthode, mais je ne semble pas avoir ce qui est disponible.
J'ai ajouté "à l'aide" des références à la fois System.Web
et System.Net
en vain. J'ai aussi vu d'autres références au serveur.urlEncode parmi d'autres variantes, mais je ne vois pas la méthode de n'importe où.
J'utilise la dernière version de C# dans Visual Studio 2010. Est la méthode dite à quelque chose de différent dans cette version, caché quelque part d'autre, ou suis-je complètement à côté de la plaque?
source d'informationauteur Sootah
Vous devez vous connecter pour publier un commentaire.
Par défaut, les nouveaux projets dans Visual Studio 2010 la cible .NET Framework 4.0 Profil du Clientqui ne comprend pas les
System.Web
assemblée.Vous pouvez changer la version du Cadre de votre projet de cibles dans les Propriétés de votre projet. En vertu de la "Demande" de l'onglet, sélectionnez ".NET Framework 4.0" dans la liste déroulante appelée "Cible" cadre de.
Ensuite, assurez-vous que vous avez ajouté une référence à
System.Web
à l'aide de la "Ajouter une Référence" boîte de dialogue.Enfin, ajouter une
à l'aide de
de la directive vers le haut de votre classe à laSystem.Web
espace de noms:Vous trouverez les différentes surcharges de la
UrlEncode
méthode dans leHttpUtility
classe. Exemple de code:.Net 4.5, vous pouvez (devez?, "s'il vous plaît utiliser", dit un Katana commentaire) utiliser le Système.Net.WebUtility.UrlEncode méthode.
Il ne peut pas être nommé différemment depuis Visual Studio n'est pas de l'approvisionnement de la classe ou des noms de méthode, l' .NET framework n'.
Tout ce que je peux vous dire, c'est que le Système.Web.HttpUtility ET du Système.Web.HttpServerUtility classes contiennent une méthode appelée
UrlEncode(string)
.Oui, l'ajout de la référence a été ma réponse. Mais assurez-vous de vérifier le projet, que ce soit dans, si vous avez plus de 1 projet dans votre solution. J'ai eu une solution avec 3 projets.
System.Web
a été ajoutée à 2 projets, mais pas le 3ème projet.J'ai passé une heure à essayer de comprendre pourquoi je ne pouvais pas utiliser
HttpUtility
depuis qu'il a été une Référence dans le projet principal. Mais je n'ai pas vérifier les sous-projets de la Solution.Espère que cela aide quelqu'un.
Si votre projet cible ".NET Framework Client X Profil",vous ne pouvez pas utiliser "le Système de.Web",mais vous pouvez utiliser "Uri.EscapeUriString | Uri.UnEscapeUriString" à la place.
Parce que vous ne voyez
AspNetHostingPermission
AspNetHostingPermissionAttribute
etAspNetHostingPermissionLevel
je soupçonne fortement (comme les autres gars) que vous êtes en manque une référence.Le meilleur que vous pouvez faire est de commencer un nouveau projet, parce que c'est assez compliqué à ajouter/supprimer des références sans ruiner l'ensemble de votre projet.
Comment: Ajouter ou Supprimer des Références dans Visual Studio (MSDN) montre comment ajouter/supprimer des références. Dans votre cas, vous devriez consulter/ajouter le
System.Web
de référence.