/// <summary> /// Updates a single zip file of the database. /// </summary> /// <param name="vm">The vm<see cref="ZipFileViewModel"/>.</param> public static void Update(ZipFileViewModel vm) { Debug.Assert(vm != null); Debug.Assert(vm.PackageId != 0); using var dbc = new PmDb(); var ent = dbc.Find <ZipFile>(vm.PackageId); ent.GetViewModel(vm); dbc.SaveChanges(); }
/// <summary> /// Adds a single zip file to the database. /// </summary> /// <param name="vm">The vm<see cref="ZipFileViewModel"/>.</param> public static void Add(ZipFileViewModel vm) { Debug.Assert(vm != null); using var dbc = new PmDb(); var ent = new ZipFile(); ent.GetViewModel(vm); dbc.ZipFiles.Add(ent); dbc.SaveChanges(); vm.GetModel(ent); }
private bool DeleteZipFile(ZipFileViewModel item) { try { File.Delete(Path.Combine(item.FilePath, item.Filename)); return(true); } catch (Exception) { return(false); } }
private void button3_Click(object sender, EventArgs e) { string filePath = Path.GetDirectoryName(zipFileBox.Text); string desPath = Path.Combine(filePath, "img"); ZipFileViewModel.UnZip(zipFileBox.Text, desPath); MessageBox.Show("解压完成,点击确定开始上传", Framework.Environment.PROGRAM_NAME, MessageBoxButtons.OK, MessageBoxIcon.Asterisk); // 创建线程开始上传 Thread th = new System.Threading.Thread(StartLoadPicImage); th.Start(desPath); }
/// <summary> /// Initializes a new instance of the <see cref="ZipFileWindow"/> class. /// </summary> /// <param name="vm">The vm<see cref="ZipFileViewModel"/>.</param> public ZipFileWindow(ZipFileViewModel vm) { InitializeComponent(); WpfHelper.PositionChildWindow(this); if (vm == null) { vm = Locator.GetZipFileViewModel(); vm.PackageId = 11; vm.AddonName = "Arphaxhad"; vm.AddedDate = DateTime.Now; vm.Filename = "Arphaxhad.zip"; vm.FilePath = "d:\\Downloads\\"; vm.FileSize = 100000; } this.DataContext = vm; }
/// <summary> /// Deletes a single zip file from the database. /// </summary> /// <param name="vm">The vm<see cref="ZipFileViewModel"/>.</param> public static void Delete(ZipFileViewModel vm) { Debug.Assert(vm != null); Debug.Assert(vm.PackageId != 0); using var dbc = new PmDb(); foreach (var item in vm.Folders) { item.PackageId = null; var folderEnt = dbc.Find <Folder>(item.FolderId); folderEnt.PackageId = null; dbc.Update(folderEnt); } var ent = dbc.Find <ZipFile>(vm.PackageId); dbc.ZipFiles.Remove(ent); dbc.SaveChanges(); }
/// <summary> /// The ZipFileView_DataContextChanged. /// </summary> /// <param name="sender">The sender<see cref="object"/>.</param> /// <param name="e">The e<see cref="DependencyPropertyChangedEventArgs"/>.</param> private void ZipFileView_DataContextChanged(object sender, DependencyPropertyChangedEventArgs e) { if (e.OldValue is ZipFileViewModel vm) { vm.BrowseZipFileRequested -= Vm_BrowseZipFileRequested; vm.DeleteZipFileRequested -= Vm_DeleteZipFileRequested; vm.DoneEditingRequested -= Vm_DoneEditingRequested; vm.OpenZipArchiveRequested -= Vm_OpenZipArchiveRequested; } vm = e.NewValue as ZipFileViewModel; if (vm != null) { vm.BrowseZipFileRequested += Vm_BrowseZipFileRequested; vm.DeleteZipFileRequested += Vm_DeleteZipFileRequested; vm.DoneEditingRequested += Vm_DoneEditingRequested; vm.OpenZipArchiveRequested += Vm_OpenZipArchiveRequested; } viewModel = DataContext as ZipFileViewModel; }
/// <summary> /// Initializes static members of the <see cref="DbCore"/> class. /// </summary> static DbCore() { PmDb.BuildConnectString( Path.Combine( Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "Yoder\\PluginManager")); var pvm = Locator.MainViewModel; using var dbc = new PmDb(); foreach (var ent in dbc.ZipFiles) { var zfvm = new ZipFileViewModel(); zfvm.GetModel(ent); pvm.ZipFileFolderCollection.Add(zfvm); } foreach (var ent in dbc.Folders) { var vm = new FolderViewModel(); vm.GetModel(ent); pvm.FolderCollection.Add(vm); } }
/// <summary> /// The DeleteRecord. /// </summary> /// <param name="item">The item<see cref="ZipFileViewModel"/>.</param> private void DeleteRecord(ZipFileViewModel item) { // DbCore.Delete(item); Locator.MainViewModel.ZipFileFolderCollection.Remove(item); Window.GetWindow(this).Close(); }
/// <summary> /// The DeleteRecord. /// </summary> /// <param name="item">The item<see cref="ZipFileViewModel"/>.</param> private static void DeleteRecord(ZipFileViewModel item) { DbCore.Delete(item); Locator.MainViewModel.ZipFileFolderCollection.Remove(item); }
/// <summary> /// The Vm_AddNewZipFileRequested. /// </summary> /// <param name="sender">The sender<see cref="object"/>.</param> /// <param name="e">The e<see cref="EventArgs"/>.</param> private void Vm_AddNewZipFileRequested(object sender, EventArgs e) { var dia = new OpenFileDialog { AddExtension = false, CheckFileExists = true, Multiselect = true, Title = "Find Zip Files to Add", DereferenceLinks = true, Filter = "Zip files (*.zip, *.7z)|*.zip;*.7z|Exe files (*.exe)|*.exe|All files (*.*)|*.*", FilterIndex = 1, InitialDirectory = Locator.SetupViewModel.ZipFilesFolder }; var result = dia.ShowDialog(); if (result == true) { var zipList = new List <ZipFileViewModel>(); foreach (var fullpath in dia.FileNames) { var filename = Path.GetFileName(fullpath); var path = Path.GetDirectoryName(fullpath); var di = new FileInfo(fullpath); var zipFile = new ZipFileViewModel() { FileDate = di.CreationTime, Filename = filename, FilePath = path, AddedDate = DateTime.Now, FileSize = di.Length }; zipList.Add(zipFile); } DbCore.Add(zipList); string fileItems = ""; foreach (var item in zipList) { Locator.MainViewModel.ZipFileFolderCollection.Add(item); fileItems += Environment.NewLine + item.Filename; } string message; string title; var isSingle = zipList.Count == 1; if (isSingle) { message = $"One zip file was added:\n{fileItems}"; title = "Zip File Added"; } else { message = $"These {zipList.Count} zip files were added:\n{fileItems}"; title = "Zip Files Added"; } App.Inform(title, message); } }