using System.Linq.Expressions; namespace Lantean.QBTMud.Filter { public record PropertyFilterDefinition { public PropertyFilterDefinition(string column, string @operator, object? value) { var (expression, propertyType) = ExpressionModifier.CreatePropertySelector(column); Column = column; ColumnType = propertyType; Operator = @operator; Value = value; Expression = expression; } public string Column { get; } public Type ColumnType { get; } public string Operator { get; set; } public object? Value { get; set; } public Expression> Expression { get; } } }