private async void SharePlanButtonClick(object sender, EventArgs e) { if (MessageBox.Show($"Warning: Your execution plan, including its query and parameters, will be immediately sent to {PlanProcessor.SharePlanWebsite} and stored in its database for sharing. Please review your query to make sure it doesn't contain sensitive data." + $"{Environment.NewLine}Do you want to continue?", "Continue", MessageBoxButtons.YesNo, MessageBoxIcon.Question) != DialogResult.Yes) { return; } planSharedLabel.Visible = true; copyLinkLabel.Text = "Copy"; planSharedLabel.Text = "Sharing your plan..."; copyLinkLabel.Visible = planLinkLinkLabel.Visible = false; try { planLinkLinkLabel.Text = await PlanProcessor.SharePlanAsync(plan); copyLinkLabel.Visible = planLinkLinkLabel.Visible = true; planSharedLabel.Text = "Plan Shared."; } catch (Exception exception) { copyLinkLabel.Visible = planSharedLabel.Visible = false; MessageBox.Show($"Error sharing plan: {exception.Message}", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private async void SharePlanButtonClick(object sender, EventArgs e) { planSharedLabel.Visible = true; copyLinkLabel.Text = "Copy"; planSharedLabel.Text = "Sharing your plan..."; copyLinkLabel.Visible = planLinkLinkLabel.Visible = false; try { planLinkLinkLabel.Text = await PlanProcessor.SharePlanAsync(plan); copyLinkLabel.Visible = planLinkLinkLabel.Visible = true; planSharedLabel.Text = "Plan Shared."; } catch (Exception exception) { copyLinkLabel.Visible = planSharedLabel.Visible = false; MessageBox.Show($"Error sharing plan: {exception.Message}", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public void DisplayPlan(string rawPlan) { plan = rawPlan; indexes = DatabaseProvider.GetMissingIndexes(rawPlan); webBrowser.DocumentText = PlanProcessor.ConvertPlanToHtml(rawPlan); if (indexes.Count > 0 && tabControl.TabPages.Count == 1) { tabControl.TabPages.Add(indexesTabPage); } if (indexes.Count == 0 && tabControl.TabPages.Count > 1) { tabControl.TabPages.Remove(indexesTabPage); } indexesTabPage.Text = $"{indexes.Count} Missing Index{(indexes.Count > 1 ? "es" : "")}"; indexesDataGridView.DataSource = indexes; indexesDataGridView.ResetBindings(); }