public override DataSourceString Execute(DatabaseUri databaseUri, BuildSourceField field, DataSourceString dataSource) { Assert.ArgumentNotNull(databaseUri, nameof(databaseUri)); Assert.ArgumentNotNull(field, nameof(field)); Assert.ArgumentNotNull(dataSource, nameof(dataSource)); var query = dataSource.Path; if (query.StartsWith(@"query:", StringComparison.InvariantCultureIgnoreCase)) { query = query.Mid(6); } var dialog = new BuildQueryDialog(query, CustomValidationType.Query); dialog.Title = "Build Query"; if (AppHost.Shell.ShowDialog(dialog) != true) { return(null); } dataSource.Path = @"query:" + dialog.Text; dataSource.Parameters.Clear(); return(dataSource); }
private void BuildQuery([NotNull] object sender, [NotNull] RoutedEventArgs e) { Debug.ArgumentNotNull(sender, nameof(sender)); Debug.ArgumentNotNull(e, nameof(e)); var query = Editor.Text; var type = GetCustomValidationType(); var dialog = new BuildQueryDialog(query, type); if (AppHost.Shell.ShowDialog(dialog) == true) { Editor.Text = dialog.Text; } }