かなり長い間検索した後でも、探している答えが見つかりません。ツリーのパラメーターの追加と削除に関する回答は見つかりましたが、特定のパラメーターの置き換えに関する回答は見つかりませんでした。
私の最初の方法は、希望どおりに機能しています。partitionKey 値を Uri エスケープ値に置き換えてから、エスケープされていない結果を返す必要があります。
public override IList<T> GetRowEntityList(string partitionKey)
{
IList<T> rowEntities = base.GetRowEntityList(Uri.EscapeDataString(partitionKey));
return rowEntities.Select(UnEscapeRowEntity).ToList();
}
私が抱えている問題は、このメソッドをオーバーライドして同じように動作させることです。T
typeにはプロパティがあることは既に知っていますが、他の数のプロパティを持つこともできます PartitionKey
。RowKey
サンプルの述語の場合:
x => x.RowKey == "foo/bar" && x.SomeValue == "test"
私はそれが
x => x.RowKey == Uri.EscapeDataString("foo/bar") && x.SomeValue == "test"
これを行う方法はありますか?
私の基本クラスは、この述語を使用して、呼び出しT
を使用するタイプのエンティティを含むテーブルでテーブル ルックアップを行います。Where(predicate)
public override IList<T> GetRowEntityList(System.Linq.Expressions.Expression<Func<T, bool>> predicate)
{
//modify predicate value here
return base.GetRowEntityList(predicate);
}