c#webClient上传字符串被切断

本文关键字:字符串 c#webClient | 更新日期: 2023-09-27 18:29:26

我需要一些关于C#WebClient UploadString方法的帮助。我正在尝试将一个长字符串(我从数据库中读取)上传到服务器(PHP),目前我正在尝试使用UploadString方法,因为它似乎是最简单的。我遇到的问题是,我上传的字符串在大约4000个字符后被截断,我不知道为什么。例如:data.length:19000(上传前)Post.length:4000(PHP)

我做了什么来绕过这个问题:我上传了不到4000个字符的字符串。但我仍然面临这个问题!上传的每一秒都被切断了,我不知道为什么。这是我的C#代码:

WebClient client = new WebClient();
        foreach (DataRow dr in dra)
        {
            foreach (int y in index)
            {
                data += dr[y] + ";";
                Console.Write(".");
            }
            data += ":";
            if (count1 > 50)
            {
                // Upload the data.
                Console.WriteLine("Uploading Data.....");
                Console.WriteLine("Länge des Strings:" + data.Length);
                Console.WriteLine(data);
                client.Dispose();
                client.Encoding = System.Text.Encoding.UTF8;
                client.Headers[HttpRequestHeader.ContentType] = "application/x-www-form-urlencoded";
                string Ergebnis = client.UploadString(address, "POST", data);
                Console.WriteLine(Ergebnis);
                client.Dispose();
                result.ErrorMessage += Ergebnis;
                count1 = -1;
                data = "table="+table+"&columns=continueUpload&values=";
            }
            ++count1;
        }

有人知道这是从哪里来的吗?webclient方法有字符串限制吗?

c#webClient上传字符串被切断

好的,我找到了解决方案,感谢Alex的提示!我必须对我所有的值进行url编码,比它有效!