protected override void UpdateView(object state) { var dlg = new SaveModelDataDlg(); if (dlg.ShowDialog() == true) { SetupData.Save( AppDataCenter.Singleton.SetupData, AppDataCenter.Singleton.GetSetupDataFileName(AppDataCenter.Singleton.InputFolder)); ModelData modelData = new ModelData(); modelData.Name = dlg.ModelName; modelData.CreateDate = DateTime.Now; modelData.TrainPages = new List <PageSetupData>(AppDataCenter.Singleton.TrainPages.Select(x => x.Setup)); modelData.AcceptanceCriteria = AppDataCenter.Singleton.AcceptanceCriteria; if (AppDataCenter.Singleton.ReportsData.Count() > 0) { modelData.Match = AppDataCenter.Singleton.BaseReportData.Match; modelData.Reject = AppDataCenter.Singleton.BaseReportData.Reject; modelData.FP = AppDataCenter.Singleton.BaseReportData.FP; } else { modelData.Match = 0; modelData.Reject = 0; modelData.FP = 0; } modelData.FeaturesSelectedNames = AppDataCenter.Singleton.FeaturesSelected .Where(x => x.IsSelected) .Select(x => x.Name) .ToList(); /* modelData.FieldsSelectedNames = AppDataCenter.Singleton.SetupData.Fields * .Where(x => x.IsSelected == true) * .Select(x => x.Name) * .ToList();*/ modelData.FieldsSelectedNames = AppDataCenter.Singleton.ChosenFields.ToList(); modelData.ClassifierModel = new MemoryStream(); ClassifierService.Service.SaveTrainData( modelData.ClassifierModel, AppDataCenter.Singleton.SetupData.BaseClassifierConfiguration, AppDataCenter.Singleton.InputFolder, AppDataCenter.Singleton.BaseReportData.PageThreshold); ModelsService.Service.Save(modelData); } }