Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
c#网络客户端上载字符串被切断_C#_Php_String_Webclient_Uploadstring - Fatal编程技术网

c#网络客户端上载字符串被切断

c#网络客户端上载字符串被切断,c#,php,string,webclient,uploadstring,C#,Php,String,Webclient,Uploadstring,我需要一些关于C#WebClient UploadString方法的帮助。我正在尝试将一个长字符串(从数据库读取)上传到服务器(PHP),目前我正在尝试使用UploadString方法,因为这似乎是最简单的方法。我遇到的问题是,我上传的字符串在大约4000个字符后被切断,我不知道为什么。 例如: data.length:19000(上传前) Post.length:4000(PHP) 我是如何绕过这个问题的:我上传的字符串长度不到4000个字符。但我仍然面临这个问题!每一秒上传都会被切断,我不知

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

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


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

好的,我找到了解决方案,谢谢Alex的提示!
我必须对我所有的价值观进行URL编码,但这并不管用

检查ini中的post_max_大小,upload_max_filesize etcI已经检查过了。一切都设置为50米,php缓存高达500米,所以它一定是其他东西。你是urlencoding
data
?不确定你的意思吗?数据是一个如下所示的字符串:
columns=someinformation&values=一个非常长的字符串
.UploadString
不应用URL编码(
Hello World
=>
Hello%20World
)您应该
HttpUtility.UrlEncode
这些值,或者使用
wc.UploadValues
这样做。更好的解释会更好
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;
        }