Ejemplo n.º 1
0
        /// <summary>
        /// Refresh/Reload the list with filenames
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btn_Refresh_Click(object sender, EventArgs e)
        {
            lbl_Error.Text = String.Empty;
            var api = AppSettingsHelper.GetApi("api");

            GetFileList(api);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Call the Web Api to upload the selected file
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private async void btn_UploadFile_Click(object sender, EventArgs e)
        {
            var api = AppSettingsHelper.GetApi("Api");

            lbl_UploadResult.Text = string.Empty;

            if (txt_FilePath.Text == string.Empty)
            {
                lbl_UploadResult.Text = ConstantResources.NoUploadFile;
            }
            else
            {
                try
                {
                    HttpClient httpClient = new HttpClient();

                    var fileStream = File.Open(txt_FilePath.Text, FileMode.Open);
                    var fileInfo   = new FileInfo(txt_FilePath.Text);

                    MultipartFormDataContent content = new MultipartFormDataContent();
                    content.Headers.Add("filePath", txt_FilePath.Text);
                    content.Add(new StreamContent(fileStream), "\"file\"", string.Format("\"{0}\"", fileInfo.Name));

                    using (var response = await httpClient.PostAsync(api, content))
                    {
                        if (response.IsSuccessStatusCode)
                        {
                            lbl_UploadResult.Text = ConstantResources.FileUploadSucceded;
                            txt_FilePath.Text     = string.Empty;
                        }
                        else
                        {
                            var fileJsonString = await response.Content.ReadAsStringAsync();

                            var uploadResult = JsonConvert.DeserializeObject <ResultMessage>(fileJsonString);
                            lbl_UploadResult.Text = uploadResult.Message;
                        }
                    }

                    fileStream.Close();
                }
                catch (Exception ex)
                {
                    lbl_UploadResult.Text = ex.Message;
                }
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Download a file from the server, calling the appropriate Web Api function
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private async void btn_Download_Click(object sender, EventArgs e)
        {
            lbl_DownloadResult.Text = string.Empty;
            var api = AppSettingsHelper.GetApi("Api");

            if (Check_Input())
            {
                api = api + "/" + txt_TargetFilename.Text;

                using (var client = new HttpClient())
                {
                    try
                    {
                        using (var response = await client.GetAsync(api))
                        {
                            if (response.IsSuccessStatusCode)
                            {
                                var file = await response.Content.ReadAsStringAsync();

                                File.WriteAllBytes(txt_TargetFolder.Text + @"\" + txt_TargetFilename.Text, Convert.FromBase64String(JsonConvert.DeserializeObject <string>(file)));
                                lbl_DownloadResult.Text = ConstantResources.FileDownloadSucceded;
                            }
                            else
                            {
                                var fileJsonString = await response.Content.ReadAsStringAsync();

                                var downLoadResult = JsonConvert.DeserializeObject <ResultMessage>(fileJsonString);
                                lbl_DownloadResult.Text = downLoadResult.Message;
                            }
                        }
                    }
                    catch (Exception ex)
                    {
                        lbl_DownloadResult.Text = ex.Message;
                    }
                }
            }
        }