24

I'm trying to encode a URL using the HttpUtility.UrlEncode() method, why am I getting

The type or namespace name 'HttpUtility' does not exist in the namespace 'System.Web' (are you missing an assembly reference?)

error ? I'm using Visual C# 2008, Express Edition.

The code I'm using is simplistic:

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();

        }

    }
}
4

4 回答 4

33

You need to include a reference to System.Web. Right-click your project in the Solution Explorer and choose Add Reference... . If you take a look at MSDN you'll see it's contained in the System.Web.dll assembly, as far as I remember, this is not referenced by default in new projects.

于 2009-09-02T07:37:40.253 回答
29

Just in case anyone stumbles across this, is running VS 2010 and cannot find System.Web in the available references...

Right click on the project and select Properties, if the Target Framework is set to ".Net Framework 4 Client" then change it to ".Net Framework 4".

But beware this will close, reopen and rebuild your project (also if you have a web service references these will need to be refreshed)

于 2011-06-24T10:52:49.803 回答
5

For people using .NET 4.0 or later, you can use WebUtility.UrlEncode which works with client profile (does not require System.Web assembly reference).

于 2015-11-26T00:23:49.730 回答
0
  1. click on project tab in menu
  2. click on Add References
  3. in References window click on Framework and check the System.Web
于 2015-01-06T11:54:15.087 回答