我需要一些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方法是否有任何字符串限制?
答案 0 :(得分:1)
好吧,我找到了解决方案,感谢Alex提示! 我不得不urlencode我的所有价值,而不是它的工作!