Ejemplo n.º 1
0
        private void btnDownload_Click(object sender, EventArgs e)
        {
            if (tabResults.SelectedIndex == 0)
            {
                if (gridResults.SelectedRows.Count > 0)
                {
                    var ids =
                        (from DataGridViewRow selectedRow in gridResults.SelectedRows
                         select Convert.ToInt32(selectedRow.Cells[0].Value)).ToList();

                    var webClient        = new WebClient();
                    var isoFinderRequest = new IsoFinderFileRequest
                    {
                        UserId  = 1,
                        FileIds = ids.ToArray(),
                        Query   = txtSearch.Text
                    };
                    webClient.UploadStringCompleted += WebClientOnUploadStringCompleted;
                    var serialize = JsonConvert.SerializeObject(isoFinderRequest);
                    webClient.Headers.Add("Content-Type", @"application/json");
                    webClient.UploadStringAsync(
                        new Uri(Constants.IsoFinderApiUrl + Constants.IsoFinderFileRequestUri), "POST", serialize);
                }
            }
            else
            {
                if (gridFolderResults.SelectedRows.Count > 0)
                {
                    var ids =
                        (from DataGridViewRow selectedRow in gridFolderResults.SelectedRows
                         select Convert.ToInt32(selectedRow.Cells[0].Value)).ToList();

                    var webClient        = new WebClient();
                    var isoFinderRequest = new IsoFinderFolderRequest
                    {
                        UserId    = 1,
                        FolderIds = ids.ToArray(),
                        Query     = txtSearch.Text
                    };

                    webClient.UploadStringCompleted += WebClientOnUploadStringCompleted;
                    var serialize = JsonConvert.SerializeObject(isoFinderRequest);
                    webClient.Headers.Add("Content-Type", @"application/json");
                    webClient.UploadStringAsync(
                        new Uri(Constants.IsoFinderApiUrl + Constants.IsoFinderFolderRequestUri), "POST", serialize);
                }
            }
        }
Ejemplo n.º 2
0
        public HttpResponseMessage Create(IsoFinderFileRequest fileRequest)
        {
            try
            {
                var entities      = new IsoFinderEntities();
                var user          = entities.Users.Find(fileRequest.UserId);
                var requestStatus = entities.IsoRequestStatus.Find((int)IsoRequestStatus.Pending);

                var isoFiles = new List <IsoRequestFile>();
                foreach (int fileId in fileRequest.FileIds)
                {
                    var file = entities.IsoFiles.Find(fileId);
                    isoFiles.Add(new IsoRequestFile {
                        IsoFile = file
                    });
                }

                var isoFinderRequest = new IsoRequest
                {
                    User            = user,
                    IsoRequestFiles = isoFiles,
                    Created         = DateTime.Today,
                    IsoRequestStatu = requestStatus,
                    Query           = fileRequest.Query
                };

                entities.IsoRequests.Add(isoFinderRequest);
                entities.SaveChanges();
                return(new HttpResponseMessage(HttpStatusCode.Created));
            }
            catch (Exception ex)
            {
                return(new HttpResponseMessage(HttpStatusCode.InternalServerError)
                {
                    Content = new StringContent(ex.Message)
                });
            }
        }