在 MAUI 切换之前从代码库中重构反应式 Rx 扩展

问题描述 投票:0回答:1

所有,我希望删除 System.Reactive 附带的所有 Observable 扩展方法,因为我们正在将当前代码库从 XF 迁移到 MAUI,并且我们有 XF 代码应用程序使用一些实现类似这样的方法的调用下面的一个..

protected IObservable<IServiceList<TKey>> GetAll()
        {
            return Observable.Defer(
                () => Task.Run(() => CacheService.GetObject<IServiceList<TKey>>(Key) ?? new ServiceList<TKey>())
                    .ToObservable());
        }

我知道这个方法非常强大,可以获取任何事物的更新更改...我想知道是否如何以不依赖于可观察扩展方法的方式重写它。

我正在考虑如何重写或将其转换为任务以保持更新信息..

请告诉我...

非常感谢

c# system.reactive rx.net
1个回答
0
投票

如果您询问如何删除可观察量并将其替换为任务,那么这就是要走的路:

protected Task<IServiceList<TKey>> GetAll() =>
    Task.Run(() =>
        CacheService.GetObject<ServiceList<TKey>>(Key) ?? new ServiceList<TKey>() as IServiceList<TKey>);

我确实必须稍微修改一下你的代码,因为我觉得这是一个编造的示例(即不会按原样编译)。

© www.soinside.com 2019 - 2024. All rights reserved.