Fra*_*ins 3 c# urlencode url-encoding
所以,我是C#的完整菜鸟.我有一个我需要编码的网址,以便使用urlencoded帖子.
问题是,我发现的每个资源都说使用System.Web.HttpServerUtility.UrlEncode.或者,我已经看到资源告诉我使用System.Web.Util.HttpEncoder().
我添加了对system.web的引用,但是得到了"system.web命名空间中不存在"和"system.web.util命名空间中不存在"错误.
任何提示都会很好!
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.IO;
using System.Web;
namespace WindowsFormsApplication2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string url = HttpUtility.UrlEncode("http://stackoverflow.com/");
MessageBox.Show(url);
}
}
}
Run Code Online (Sandbox Code Playgroud)
您可能正在使用.NET 4客户端配置文件,但不包括System.Web.dll- 或者您还没有添加对它的引用.如果进入项目属性,在"应用程序"下选择".NET Framework 4"作为目标框架,而不是".NET Framework 4 Client Profile".然后,您应该能够添加对System.Web程序集的引用.
(请注意,组装不一样的命名空间.集引用添加到项目中,而您通常使用的命名空间"添加"到一个单独的文件using指令在上面.你已经拿到using了该指令System.Web的命名空间,但如果没有HttpServerUtility对System.Web装配的引用,这将无法帮助您使用.)
或者,根据您的具体要求,您可以使用Uri.EscapeDataString或Uri.EscapeUriString.这两个都可以在客户端配置文件中找到.有这么多不同的方法做到这一点有点烦人 - 挑选正确的方法可能很棘手:(
您可能需要将System.Web程序集的引用添加到项目中:
