C# Http Post File Upload
private async void Button_Click(object sender, RoutedEventArgs e)
{
OpenFileDialog dlg = new OpenFileDialog();
dlg.Multiselect = true;
if (dlg.ShowDialog() == true)
{
var result = await Upload(new List<string>(dlg.SafeFileNames), new List<string>(dlg.FileNames));
MessageBox.Show(result ? "성공" : "실패");
}
}
private async Task<bool> Upload(List<string> fileNames, List<string> filePaths)
{
try
{
var url = "http://192.168.0.100/Home/UploadFiles";
HttpClient httpClient = new HttpClient();
MultipartFormDataContent form = new MultipartFormDataContent();
//form.Add(new StringContent(id), "id");
for (int i = 0; i < fileNames.Count; i++)
{
var fileName = fileNames[i];
var filePath = filePaths[i];
var file_bytes = File.ReadAllBytes(filePath);
form.Add(new ByteArrayContent(file_bytes, 0, file_bytes.Length), "imagefile", fileName);
}
HttpResponseMessage response = await httpClient.PostAsync(url, form);
response.EnsureSuccessStatusCode();
httpClient.Dispose();
string sd = response.Content.ReadAsStringAsync().Result;
urlstring.Text = sd;
}
catch
{
return false;
}
return true;
}
'C# > Network' 카테고리의 다른 글
C# TCP Client (0) | 2020.08.14 |
---|---|
C# Multi Thread TcpServer (0) | 2020.08.14 |
C# TCPServer with WebSocket (0) | 2020.08.13 |
C# UDP (0) | 2020.08.13 |
C# WOL 컴퓨터 원격 온오프 (0) | 2020.08.07 |