private void btnGenerate_Click(object sender, EventArgs e) { var selectedTemplate = cbSupportedTemplates.SelectedItem as TemplateConfigurer; if (null == selectedTemplate) { throw new Exception("No template selected."); } if (null == tables || tables.Count <= 0) { LoadTable(); } ThreadPool.SetMaxThreads(500, 500); var lastSession = WorkingConfigService.GetLastSession(); if (null != lastSession) { selectedTemplate.DestSourceDir = lastSession.DestDir ?? selectedTemplate.DestSourceDir; } TemplateGenerator.Generate(new GenerateRequest() { Configurer = selectedTemplate, Tables = tables, ProviderType = providerType }); }
public static void LoadSavedSession() { INSTANCE = JsonUtils.Load <WorkingConfigService>(CONFIG_FILE_NAME); if (null == INSTANCE) { INSTANCE = new WorkingConfigService(); } }
void SaveWorking(ConnectionSetting connectionSetting = null) { var setting = connectionSetting ?? GetConnectionSetting(); try { var item = WorkingConfigService.CurrentSession; if (null == item) { item = new WorkingConfig(); } item.DestDir = txtSaveTo.Text; item.ServerSetting = setting; WorkingConfigService.SaveSession(item); } catch (Exception e) { Logs.LogFactory.Error("Cannot save working session." + e.Message, e); } }
void BindWorking() { var config = WorkingConfigService.GetLastSession(); if (null == config) { return; } Task.Factory.StartNew(() => { cbDatabaseType.ExeInvoke(() => { cbDatabaseType.SelectedItem = config.ServerSetting.Type; }); txtHost.ExeInvoke(() => { txtHost.Text = config.ServerSetting.Server; }); txtDatabase.ExeInvoke(() => { txtDatabase.Text = config.ServerSetting.Database; }); txtUser.ExeInvoke(() => { txtUser.Text = config.ServerSetting.Username; }); txtPass.ExeInvoke(() => { txtPass.Text = config.ServerSetting.Password; }); txtPort.ExeInvoke(() => { txtPort.Text = config.ServerSetting.Port; }); txtSaveTo.ExeInvoke(() => { txtSaveTo.Text = config.DestDir; }); }); }
private void Form1_Load(object sender, EventArgs e) { Task.Factory.StartNew(() => { TemplateGenerator.Init(); }); Task.Factory.StartNew(() => { WorkingConfigService.LoadSavedSession(); BindWorking(); }); LoadAllTemplate(); if (cbSupportedTemplates.Items.Count > 0) { cbSupportedTemplates.SelectedIndex = 0; } cbDatabaseType.Items.Add(DatabaseType.MSSQL); cbDatabaseType.Items.Add(DatabaseType.POSTGRESQL); cbDatabaseType.SelectedIndex = 0; cbDatabaseType.SelectedIndexChanged += cbDatabaseType_SelectedIndexChanged; }