如何解决使用来自两个 IObservableCache 的元组键创建单个 ObservableCache
我有两个 IObservableCaches,每个都有独立的键。我正在尝试连接到它们,以便添加/删除的任何键都以多对多的方式组合。结果缓存将使用由来自第一和第二输入缓存的键组成的值元组进行键控。在我的内部转换中,我使用每个键创建一个新对象,并公开值元组,该元组可用作结果缓存的键。
我尝试了几种不同的方法,但似乎都没有奏效。 (创建了初始缓存,但对输入缓存的更新似乎不会刷新输出缓存)以下是一次尝试的示例:
var items = inputANames.Connect().Transform(a =>
inputBNames.Connect().Transform(b =>
{
var val = new SomeObject(a,b);
Debug.WriteLine($"Item added: {val.KeyTuple}");
return val;
},true).AsObservableCache(),true).RemoveKey().TransformMany(x => x.Items).AutoRefresh();
...
_inputSubscription = items.AddKey(x => x.KeyTuple).PopulateInto(_myCombinedCache);
我曾尝试使用 SQL 样式的连接扩展方法,但我认为这行不通,因为它需要匹配输入之间的键。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。