コード例 #1
0
        private void UploadFile(object item)
        {
            canUploadJob = false;
            JobMonitorCommand.UpdateCanExecuteCommand();

            Uri SourceUri = new Uri(App.Current.Host.Source, "../UploadFileHandler.ashx");

            System.UriBuilder ub = new System.UriBuilder(SourceUri);
            Uri docUri           = new System.UriBuilder(SourceUri).Uri;

            //Uri docUri = new System.UriBuilder(
            //        System.Windows.Browser.HtmlPage.Document.DocumentUri.Scheme
            //        , System.Windows.Browser.HtmlPage.Document.DocumentUri.Host
            //        , System.Windows.Browser.HtmlPage.Document.DocumentUri.Port
            //        , "UploadFileHandler.ashx").Uri;
            // Initiate a background worker so we don't hold up the UI of the Client App
            BackgroundWorker bw = new BackgroundWorker();

            bw.DoWork += (bw_sender, bw_e) =>
            {
                ProcessSingleFile(selectedWPCFileName, selectedWPCFile, bw_sender, bw_e, docUri);
                ProcessSingleFile(selectedLAFileName, selectedLAFile, bw_sender, bw_e, docUri);
                ProcessSingleFile(selectedCtyFileName, selectedCtyFile, bw_sender, bw_e, docUri);
                ProcessSingleFile(selectedLEAFileName, selectedLEAFile, bw_sender, bw_e, docUri);
                ProcessSingleFile(selectedNUTS1FileName, selectedNUTS1File, bw_sender, bw_e, docUri);
                ProcessSingleFile(selectedWDFileName, selectedWDFile, bw_sender, bw_e, docUri);
                ProcessSingleFile(selectedPCFileName, selectedPCFile, bw_sender, bw_e, docUri);
            };
            bw.RunWorkerAsync();
            bw.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bw_RunWorkerCompleted);
        }
コード例 #2
0
        private void UploadFile(object item)
        {
            canUploadJob = false;
            JobMonitorCommand.UpdateCanExecuteCommand();
            Chunks         = new ObservableCollection <Chunk>();
            UniqueFileName = System.DateTime.Now.ToString("yyyyMMdd_HHmmss_")
                             + selectedFile.Name;
            FilePosition = 0;
            FileSize     = selectedFile.Length;
            // Construct URI to the File upload Handler ASHX file
            Uri SourceUri = new Uri(App.Current.Host.Source, "../UploadFileHandler.ashx");

            System.UriBuilder ub = new System.UriBuilder(SourceUri);

            //System.UriBuilder ub = new System.UriBuilder(
            //    System.Windows.Browser.HtmlPage.Document.DocumentUri.Scheme
            //    , System.Windows.Browser.HtmlPage.Document.DocumentUri.Host
            //    , System.Windows.Browser.HtmlPage.Document.DocumentUri.Port
            //    , "UploadFileHandler.ashx");
            // Set any parameters the Handler will require.
            // Here we pass in the original + unique file name
            ub.Query = "filename=" + selectedFile.Name
                       + "&uniquefilename=" + UniqueFileName;
            // Initiate a background worker so we don't hold up the UI of the Client App
            BackgroundWorker bw = new BackgroundWorker();

            bw.DoWork += (bw_sender, bw_e) =>
            {
                // The function that does the background work
                ProcessFileUpload(ub.Uri
                                  , (System.IO.FileInfo)bw_e.Argument
                                  , (System.ComponentModel.BackgroundWorker)bw_sender
                                  , bw_e);
            };
            bw.RunWorkerAsync(selectedFile);
            bw.RunWorkerCompleted += new RunWorkerCompletedEventHandler(bw_RunWorkerCompleted);
        }
コード例 #3
0
 void bw_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
 {
     canUploadJob = true;
     JobMonitorCommand.UpdateCanExecuteCommand();
 }