/// <summary> /// Loads the builder with a saved query (obtained from <see cref="SaveToString()"/>) /// </summary> public void LoadFromSavedData(string data) { try { IsLoading = true; var expressionGroup = JsonConvert.DeserializeObject <QueryExpressionGroupData>(data); ExpressionStackPanel.Children.Clear(); InitializeRootExpressionGroup(false); RootExpressionGroup.LoadFromData(expressionGroup); } finally { IsLoading = false; } }
/// <summary> /// Returns a plain text description of the query filter. /// </summary> public string DescriptionText() { return(RootExpressionGroup.DescriptionText()); }
/// <summary> /// Returns a serialized string representing the query as it currently is. /// </summary> public string SaveToString() { return(JsonConvert.SerializeObject(RootExpressionGroup.GetDataObject(), Formatting.Indented)); }
/// <summary> /// Returns the text of the query for a given ExpressionType. /// </summary> public string GetStatement(ExpressionType type) { return((type == ExpressionType.Sql ? $"SELECT *\nFROM {TableName}\nWHERE\n" : "") + RootExpressionGroup.ExpressionText(type)); }