public bool FileDbUpload(string fileName) { const string LOCALPATHROOTH = "D:\\App\\TextFileDemoApp\\TextFileDemoApp\\bin\\Debug\\"; string localPath = $@"{LOCALPATHROOTH}{fileName}"; if (File.Exists(localPath)) { var db = new FiledbEntities(); var fileModel = new SerializedFileDto { Name = fileName.Split('.')[0], Extension = fileName.Split('.')[1], FileContent = File.ReadAllText(localPath), }; var file = SerializedFileDto.MapTo(fileModel); db.SerializedFiles.Add(file); db.SaveChanges(); return(true); } else { return(false); } }
public async Task <IActionResult> Edit(int id, [Bind("Id,Name,FileContent,Extension")] SerializedFileDto serializedFile) { if (id != serializedFile.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(serializedFile); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!SerializedFileExists(serializedFile.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(serializedFile)); }
public IActionResult DbDownload(IEnumerable <int> ids, IEnumerable <FileExtEnum> ext) { List <SerializedFileDto> dtoCheckedFileList = _context.SerializedFile.Where(x => ids.Contains(x.Id)).ToList(); List <SerializedFile> checkedFileList = new List <SerializedFile>(); foreach (SerializedFileDto serializedFileDto in dtoCheckedFileList) { SerializedFile serializedFile = SerializedFileDto.MapTo(serializedFileDto); serializedFile.Extension = "." + ext.ToString(); checkedFileList.Add(serializedFile); } if (checkedFileList.Count == 0) { return(RedirectToAction("CheckDelete")); } if (checkedFileList.Count == 1) { //int checkedItemIndex = fileGridView.SelectedCells[0].RowIndex; //DataGridViewRow selectedRow = fileGridView.Rows[checkedItemIndex]; //var checkedItem = Convert.ToString(selectedRow.Cells["FileName"].Value); //var checkedExt = "." + Convert.ToString(selectedRow.Cells["DownloadFormat"].Value); //var db = new FiledbEntities(); //var checkedItemContent = db.SerializedFiles.FirstOrDefault(x => // x.Name == checkedItem)?.FileContent; //SerializedFile file = _fileSerialization.CreateFile(SerializedFile., checkedExt, checkedItemContent); switch (ext) { //case FileExtEnum.xml: // _fileSerialization.XmlSerializeToFile(SerializedFileDto.MapTo(checkedFileList[0])); //case ".json": // _fileSerialization.JsonSerializeToFile(SerializedFileDto.MapTo(file)); // MessageBox.Show(@"Json serialized file downloaded"); // break; //case ".bin": // _fileSerialization.BinarySerializeToFile(SerializedFileDto.MapTo(file)); // MessageBox.Show(@"Bin serialized file downloaded"); // break; //default: // MessageBox.Show(@"Please select a format to download"); // break; } return(RedirectToAction("CheckDelete")); } return(RedirectToAction("CheckDelete")); }
public async Task <IActionResult> Create([Bind("Id,Name,FileContent,Extension")] SerializedFileDto serializedFile) { if (ModelState.IsValid) { _context.Add(serializedFile); await _context.SaveChangesAsync(); _fileDbService.FileLocalCreate(serializedFile); return(RedirectToAction(nameof(Index))); } return(View(serializedFile)); }
public IActionResult CheckDelete(IEnumerable <int> ids) { List <SerializedFileDto> dtoCheckedFileList = _context.SerializedFile.Where(x => ids.Contains(x.Id)).ToList(); List <SerializedFile> checkedFileList = new List <SerializedFile>(); foreach (SerializedFileDto serializedFileDto in dtoCheckedFileList) { SerializedFile serializedFile = SerializedFileDto.MapTo(serializedFileDto); checkedFileList.Add(serializedFile); } _fileDbService.FileDelete(checkedFileList); return(View()); }
public SerializedFile BinarySerializeToFile(SerializedFileDto file) { var path = $@"D:\\App\\TextFileDemoApp\\Serialized dB downloaded\\{file.Name}{file.Extension}"; using (var fileStream = new FileStream(path, FileMode.Create)) { var serializer = new BinaryFormatter(); serializer.Serialize(fileStream, file); } var serializedItemContent = ReadFile(file.Name + file.Extension, path); SerializedFile serializedFile = CreateFile(file.Name, file.Extension, serializedItemContent); return(serializedFile); }
public SerializedFile XmlSerializeToFile(SerializedFileDto file) { var serializer = new System.Xml.Serialization.XmlSerializer(typeof(SerializedFileDto)); var path = $@"D:\\App\\TextFileDemoApp\\Serialized dB downloaded\\{file.Name}{file.Extension}"; var localFile = File.Create(path); serializer.Serialize(localFile, file); localFile.Close(); var serializedItemContent = ReadFile(file.Name + file.Extension, path); SerializedFile serializedFile = CreateFile(file.Name, file.Extension, serializedItemContent); return(serializedFile); }
public SerializedFile JsonSerializeToFile(SerializedFileDto file) { var serializer = new JsonSerializer(); var path = $@"D:\\App\\TextFileDemoApp\\Serialized dB downloaded\\{file.Name}{file.Extension}"; using (var fileStream = new StreamWriter(path)) { using (var writer = new JsonTextWriter(fileStream)) { serializer.Serialize(writer, file); } } var serializedItemContent = ReadFile(file.Name + file.Extension, path); SerializedFile serializedFile = CreateFile(file.Name, file.Extension, serializedItemContent); return(serializedFile); }
public bool FileLocalCreate(SerializedFileDto file) { if (file != null) { string path = $@"D:\\App\\TextFileDemoApp\\TextFileDemoApp\\bin\\Debug\\{file.Name}{file.Extension}"; using (var fileStream = new StreamWriter(path)) { { fileStream.Write(file.FileContent); fileStream.Close(); } } return(true); } else { return(false); } }
private void BtnDbDownload(object sender, EventArgs e) { if (fileGridView.Rows.Count == 0) { MessageBox.Show(@"Please upload a file to dB!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } int checkedItemsNb = GetCheckedItemsNo(); if (checkedItemsNb == 1) { int checkedItemIndex = fileGridView.SelectedCells[0].RowIndex; DataGridViewRow selectedRow = fileGridView.Rows[checkedItemIndex]; var checkedItem = Convert.ToString(selectedRow.Cells["FileName"].Value); var checkedExt = "." + Convert.ToString(selectedRow.Cells["DownloadFormat"].Value); var db = new FiledbEntities(); var checkedItemContent = db.SerializedFiles.FirstOrDefault(x => x.Name == checkedItem)?.FileContent; SerializedFile file = _fileSerialization.CreateFile(checkedItem, checkedExt, checkedItemContent); switch (checkedExt) { case ".xml": _fileSerialization.XmlSerializeToFile(SerializedFileDto.MapTo(file)); MessageBox.Show(@"Xml serialized file downloaded"); break; case ".json": _fileSerialization.JsonSerializeToFile(SerializedFileDto.MapTo(file)); MessageBox.Show(@"Json serialized file downloaded"); break; case ".bin": _fileSerialization.BinarySerializeToFile(SerializedFileDto.MapTo(file)); MessageBox.Show(@"Bin serialized file downloaded"); break; default: MessageBox.Show(@"Please select a format to download"); break; } } else if (checkedItemsNb > 1) { var checkedItemsList = GetCheckedItemsList(); List <SerializedFile> serializedItemsList = new List <SerializedFile>(); foreach (var file in checkedItemsList) { string checkedExt = file.Extension; switch (checkedExt) { case ".xml": SerializedFile xmlSerializedFile = _fileSerialization.XmlSerializeToFile(SerializedFileDto.MapTo(file)); serializedItemsList.Add(xmlSerializedFile); break; case ".json": SerializedFile jsonSerializedFile = _fileSerialization.JsonSerializeToFile(SerializedFileDto.MapTo(file)); serializedItemsList.Add(jsonSerializedFile); break; case ".bin": SerializedFile binSerializedFile = _fileSerialization.JsonSerializeToFile(SerializedFileDto.MapTo(file)); serializedItemsList.Add(binSerializedFile); break; default: MessageBox.Show(@"Please select a format to download"); return; } } bool isDownloaded = _fileDbService.ZipFileDbDownload(serializedItemsList); if (isDownloaded) { MessageBox.Show(@"Zip download done"); return; } else { MessageBox.Show(@"Please Select a file to download"); return; } } else { MessageBox.Show(@"Please select a file to download"); } }