Почему System.Web.HttpUtility.UrlEncode, дающий имя пространства имен, не существует в Visual С# 2008?
Я пытаюсь кодировать URL-адрес с помощью метода HttpUtility.UrlEncode()
, почему я получаю
Тип или имя пространства имен "HttpUtility" не существует в пространстве имен "System.Web" (вам не хватает ссылки на сборку?)
ошибка?
Я использую Visual С# 2008, Express Edition.
Используемый мной код упрощен:
using System;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.IO;
using System.Web;
namespace Lincr
{
public partial class frmMain : Form
{
public frmMain()
{
InitializeComponent();
}
private void cmdShorten_Click(object sender, EventArgs e)
{
WebRequest wrURL;
Stream objStream;
wrURL = WebRequest.Create("http://lin.cr?l=" + System.Web.HttpUtility.UrlEncode(txtURL.Text) + "&mode=api&full=1");
objStream = wrURL.GetResponse().GetResponseStream();
StreamReader objSReader = new StreamReader(objStream);
textBox1.Text = objSReader.ReadToEnd().ToString();
}
}
}
Ответы
Ответ 1
Вам нужно включить ссылку на System.Web
. Щелкните правой кнопкой мыши свой проект в обозревателе решений и выберите "Добавить ссылку...". Если вы посмотрите на MSDN, вы увидите, что он содержится в сборке System.Web.dll
, насколько я помню, это не ссылка по умолчанию в новых проектах.
Ответ 2
На всякий случай, когда кто-то спотыкается об этом, работает VS 2010 и не может найти System.Web в доступных ссылках...
Щелкните правой кнопкой мыши по проекту и выберите "Свойства", если в Target Framework установлено значение ".Net Framework 4 Client", а затем измените его на ".Net Framework 4".
Но будьте осторожны, это закроет, заново откроет и восстановит ваш проект (также, если у вас есть ссылки на веб-службы, они должны быть обновлены)
Ответ 3
Для пользователей, использующих .NET 4.0 или новее, вы можете использовать WebUtility.UrlEncode, который работает с профилем клиента (не требует сборки System.Web ссылка).
Ответ 4
- выберите вкладку проекта в меню
- нажмите "Добавить ссылки"
- В окне "Ссылки" нажмите "Рамки" и проверьте System.Web