public async Task LogLocalStorage(string path, string name) { //List<FileUploadCompleted> loglist = new List<FileUploadCompleted>(); //loglist.Add(new FileUploadCompleted { name = name, uploadedOn = DateTime.Now, url = path }); //var applicationData = Windows.Storage.ApplicationData.Current; //var localSettings = applicationData.LocalSettings; //if(localSettings.Values["uploadlog"] !=null) //{ // List<FileUploadCompleted> localloglist = (List<FileUploadCompleted>)localSettings.Values["uploadlog"]; //} //else //{ // localSettings.Values["uploadlog"] = loglist; //} var storage = new Setting<List<FileUploadCompleted>>(); List<FileUploadCompleted> obj = await storage.LoadAsync("uploadlog"); List<FileUploadCompleted> loglist; if(obj!=null) { if (obj.Where(p => p.Name != name).ToList().Count < 1) { loglist = obj; loglist.Add(new FileUploadCompleted { Name = name, UploadEndtime = DateTime.Now, Url = path }); await storage.SaveAsync("uploadlog", loglist); } } else { loglist = new List<FileUploadCompleted>(); await storage.SaveAsync("uploadlog", loglist); } }
public async Task InitiateFileUploading() { // patientList = new List<PatientData>(); StartTime = DateTime.Now.ToString(); PatientData PatientDataObj=null; var storage = new Setting<List<PatientData>>(); IReadOnlyList<StorageFile> files = await GetUploadingFileList(); var currentUploadCount = new Setting<int>(); DeletePartiallyUploadedItems(); int count = 0; //var temp = patientList.Select(p => p.Image1.Name).Except(files.Select(x=>x.Name)); IEnumerable<string> filesTemp; if (patientList.Count > 0) filesTemp = files.Select(p => p.Name).Except(patientList.Select(x => x.Image1.Name)); else filesTemp = files.Select(p => p.Name); int newfilecount = 0; foreach (var file in files) { foreach (var newfiles in filesTemp) { if (newfiles == file.Name) { if (newfiles.Contains(app.Username)) { newfilecount = newfilecount + 1; PatientDataObj = new PatientData(); PatientDataObj.ID = count; PatientDataObj.Image1 = new FileUploadCompleted(); PatientDataObj.Image1.Name = file.Name; PatientDataObj.Image1.Status = 0; PatientDataObj.Image1.Url = app.NormalBucketURL + file.Name; PatientDataObj.Age = count + 20; PatientDataObj.Sex = count % 2 == 0 ? DataModel.Gender.Male : DataModel.Gender.Female; var properties = await file.GetBasicPropertiesAsync(); PatientDataObj.Image1.Size = Convert.ToInt32(properties.Size) / 1000000; patientList.Add(PatientDataObj); await Task.WhenAll(Task.Factory.StartNew(() => UploadFile(file.Name, file, PatientDataObj.Image1))); ////await Task.WhenAll(Task.Run(() => UploadFile(file.Name, file, PatientDataObj.Image1))); //using (var semaphore = new SemaphoreSlim(MAX_PARALLEL_UPLOADS)) //{ //} } } } await storage.SaveAsync("UploadStat", patientList); await currentUploadCount.SaveAsync("CurrentUploadCount", newfilecount); count = count + 1; } AutoDownload downloadObj = new AutoDownload(); downloadObj.InitializeDownload(); }