.net - c# urlencode without system web
HttpUtility.UrlEncode en la aplicaciĆ³n de la consola (7)
@iar, el marco no estaba configurado como "el incorrecto". Las aplicaciones de consola y Windows (hay más) se dirigen a .NET Framework 4 Client Profile de forma predeterminada en Visual Studio 2010. Esto es por diseño. Y sucede cuando apuntas a ".NET Framework 4" en el cuadro de diálogo Nuevo proyecto. Por qué no encontró System.Web.dll se debe a que no forma parte del .NET Framework 4 Client Profile, por lo que el sistema del proyecto no puede encontrarlo y emite una advertencia durante el tiempo de compilación (que probablemente ignoró, lo que le otorga referencia System.Web.dll). No encontrará System.Web.dll en la pestaña .NET en el cuadro de diálogo Agregar referencia, ya que esa lista se filtra de acuerdo con el marco de trabajo específico.
Me gustaría utilizar HttpUtility.UrlEncode en una aplicación de consola, VB.NET, VS 2010 Beta 2.
System.Web.HttpUtility.UrlEncode(item)
Mensaje de error: ''HttpUtility'' no es miembro de ''Web''.
En esta pregunta, Anjisan sugiere agregar una referencia a System.Web, de la siguiente manera:
- En su explorador de soluciones, haga clic derecho en referencias
- Elija "agregar referencia"
- En el cuadro de diálogo "Agregar referencia", use la pestaña .NET
- Desplázate hasta System.Web, selecciona eso y presiona ok
Sin embargo, no tengo una entrada System.Web en esa ubicación.
Asegúrese de que su marco de destino sea ".NET Framework 4" y no ".NET Framework 4 Client Profile".
Cambiar el Marco de Objetivos del proyecto de ".NET Framework 4 Client Profile" a ".NET Framework 4.0" me ayudó, con .NET Framework 4 Client Profile como Target framework. Pude agregar la versión de System.Web 2.0 al Navegar a C: / WINDOWS / Microsoft.NET / Framework / v2.0.50727 desde Agregar ventana de referencia pero haciendo lo mismo para System.Web 4.0 dll dio una advertencia.
Debe agregar una referencia a System.Web y System.Web.Extensions .
Para los proyectos de Visual Basic en Visual Studio 2010, la opción para cambiar el marco de destino de ".NET Framework 4.0 Client Profile" a ".NET Framework 4.0" se encuentra en Proyecto> Propiedades> Compilar> ''Opciones de compilación avanzadas ...''
Si está usando .NET 4.0 o posterior, puede usar WebUtility.UrlEncode que funciona con el perfil del cliente (no requiere la referencia de ensamblado System.Web).
System.Web
está ahí, pero parece que Visual Studio no ordena por nombre de forma predeterminada. Tendrá que hacer clic en la columna Component name
para ordenar esa lista.
Pude ejecutar este código:
Console.WriteLine(System.Web.HttpUtility.UrlEncode(" ")); // +
Simplemente agregando una referencia System.Web
, sin System.Web.Extensions
.
Además, debe reemplazar su marco de trabajo objetivo de .NET Framework 4 Client Profile a .NET Framework 4; ir a Proyecto >> Propiedades ... >> Pestaña Aplicación