public string LongDataEscape(string Str)
{
string Output = "";
int ByteCount = 32766;
if (Str.Length > ByteCount) {
for (int i = 0; i < Str.Length; i += ByteCount) {
if (Str.Length - i < ByteCount)
Output += Uri.EscapeDataString(Str.Substring(i, Str.Length - i));
else
Output += Uri.EscapeDataString(Str.Substring(i, ByteCount));
}
} else
Output = Uri.EscapeDataString(Str);
return Output;
}