public ExportTester(ICollectionManager collectionManager) : base(collectionManager) { this.factory = new MemorySessionFactory(); this.memoryCollection = this.factory.CreateCollectionManager(); this.releaseComparer = new ReleaseEqualityComparer(true); this.importTester = new ImportTester(this.memoryCollection); }
private void OnXmlFileDropped(string file) { if (this.DatabaseRelease.Images.Count != 0 || this.DatabaseRelease.AdditionalFiles.Count != 0) { if (!Dialogs.Confirm("This will replace all images, additional files and other data. Continue?")) { return; } } WaitWindow waitWindow = new WaitWindow("Reading release data..."); waitWindow.ShowDialog(this, () => { var tempFactory = new MemorySessionFactory(); var tempManager = tempFactory.CreateCollectionManager(); using (XmlReleaseImporter xmlReleaseImporter = new XmlReleaseImporter(file, tempManager)) { Release release = xmlReleaseImporter.ImportRelease(); this.Dispatcher.InvokeAction(() => { this.LoadDataFromRelease(release, tempManager.ImageHandler); tempManager.Dispose(); tempFactory.Dispose(); }); } }); }