After a long search, I still cannot find the answer I'm looking for. I found answers about adding and removing parameters from the tree, but not about replacing certain parameters.
My first method works the way I would like, I need to replace the partitionKey value with a shielded Uri value, and then return the results without escaping.
public override IList<T> GetRowEntityList(string partitionKey) { IList<T> rowEntities = base.GetRowEntityList(Uri.EscapeDataString(partitionKey)); return rowEntities.Select(UnEscapeRowEntity).ToList(); }
The problem I am facing redefines this method to behave the same. I already know that type T has the PartitionKey and RowKey , but can also have any other number of properties.
For an example predicate:
x => x.RowKey == "foo/bar" && x.SomeValue == "test"
I expect him to become
x => x.RowKey == Uri.EscapeDataString("foo/bar") && x.SomeValue == "test"
Is there any way to do this?
My base class uses this predicate to find a table in a table containing objects of type T using the Where(predicate) call
public override IList<T> GetRowEntityList(System.Linq.Expressions.Expression<Func<T, bool>> predicate) {
source share