のJavaの例は、Hazelcastに述語の機能の様々な用途を示したが、私は、C#でマップをフィルタリングする方法を見つけることができないんです。例えば述語用法
これはJavaで動作します。
C#クライアントのソースコードを見るとEntryObject e = new PredicateBuilder().getEntryObject();
Predicate agePredicate = e.get("age").equal(age);
Predicate predicate = e.get("name").equal(name).and(agePredicate);
people = personMap.values(predicate);
、私はEntryObjectまたはPredicateBuilderという名前のクラスを見つけることができませんでした。
これはまた、Javaクライアント内の別の述語オブジェクトです:
IMap<Employee> map = hazelcastInstance.getMap("employee");
Set<Employee> employees = map.values(new SqlPredicate("active AND age < 30"));+
C#クライアントはSqlPredicateクラスを持っていますが、このコードは、C#で受け入れられない:
var predicate = new SqlPredicate("Type = 1 AND Enabled = 1");
var map = Cache.GetMap<int, Machine>(nameof(Machine));
var enabledMachines = map.Values(predicate);
コンパイラエラーがある:
CS1503: cannot convert from 'Hazelcast.Core.SqlPredicate' to 'Hazelcast.Core.IPredicate<int, Machine>'
方法によって期待される
...
だから、C#でマップを照会する適切な方法は何ですか?
は感謝:-)、その更新を逃しました –