1

简单的要求。我有一个类 - 用户 - {userId,userName,age}。

如何使用 webclient 对类的对象进行 serailize 并发送到 url(使用 post)。

像下面的东西。

将用户对象序列化为 postdata 格式的最佳方法是什么。

WebClient client = new WebClient();
        client.Encoding = System.Text.Encoding.UTF8;
        client.Credentials = CredentialCache.DefaultNetworkCredentials;
        string postData = "orderId=5&status=processed2&advertId=ADV0001a";
        byte[] postArray = Encoding.ASCII.GetBytes(postData);
        client.Headers.Add("Content-Type","application/x-www-form-urlencoded");
        byte[] responseArray = client.UploadData(address, postArray);
        var result = Encoding.ASCII.GetString(responseArray);
        return result;
4

1 回答 1

0

我将对您的代码应用以下简化:

using (var client = new WebClient())
{
    client.Credentials = CredentialCache.DefaultNetworkCredentials;
    var data = new NameValueCollection 
    {
        { "userId", user.Id },
        { "userName", user.Name },
        { "age", user.Age }
    };
    var responseArray = client.UploadValues(address, data);
    return Encoding.ASCII.GetString(responseArray);
}
于 2011-01-10T20:29:53.900 回答