Какой самый эффективный способ загрузки файлов на сервер через http post?
Я сейчас использую WebClient и темы:
public static void Uploadfile(string file_path, string SERVER_URL)
{
string filename = file_path;//Asign a value anyway in case of error.
try
{
filename = Path.GetFileName(file_path);
//Parameter for pass the name of the file
NameValueCollection parameters= new NameValueCollection();
parameters.Add("file", filename);
WebClient client = new WebClient();
//PUT Request
client.QueryString = parameters;
byte[] rawResponse = client.UploadFile(SERVER_URL, "POST", file_path);
Console.WriteLine(filename + " Uploaded!");
client.Dispose();
}
catch (Exception err)
{
Console.WriteLine(filename + " NOT uploaded: " + err.Message);
}
}
Я вызываю функцию в потоке следующим образом:
for(xxx)
tasks.Add(Task.Run(() => Uploadfile(file_path, SERVER_URL)));
Я открываю экземпляр для каждого файла, это плохо? WebClient является наиболее эффективным? Есть ли у вас какие-либо предложения?