c# - Reactive Extension-新版本中旧版本的问题使用方法

标签 c# observer-pattern system.reactive

我是 .NET 的新手,我以前的工作是 PLC 程序员。我有一个旧应用程序,我在其中使用了 .NET 的 Reactive Extension。

我不会长期维护这个应用程序。现在我为 Reactive Extension 下载了新版本,但我在使用旧代码时遇到了问题。

我知道 Rx 中的某些部分已更改。

这是一个有问题的旧代码:

    Observable.FromEvent<PropertyChangedEventArgs>(this, "PropertyChanged")
    .Where(e => e.EventArgs.PropertyName == "Nick")
    .Select(_ => this.Nick)
    .Where(text => text.Length > 3)
    .Do(LoadUser)
    .Throttle(TimeSpan.FromSeconds(3000))
    .Subscribe(LoadUser);

我得到了这个异常(exception):

Error   3   Argument 1: cannot convert from 'Spirit.ViewModels.AddFriendViewModel' to 'System.Action<System.Action<System.ComponentModel.PropertyChangedEventArgs>>'    E:\C#_Projects\Pokec_Messenger\Spirit_Caliburn_Micro_v1.0\ViewModels\AddFriendViewModel.cs  123 60  Spirit_Caliburn_Micro_v1.0
Error   4   Argument 2: cannot convert from 'string' to 'System.Action<System.Action<System.ComponentModel.PropertyChangedEventArgs>>'  E:\C#_Projects\Pokec_Messenger\Spirit_Caliburn_Micro_v1.0\ViewModels\AddFriendViewModel.cs  123 65  Spirit_Caliburn_Micro_v1.0
Error   2   The best overloaded method match for 'System.Reactive.Linq.Observable.FromEvent<System.ComponentModel.PropertyChangedEventArgs>(System.Action<System.Action<System.ComponentModel.PropertyChangedEventArgs>>, System.Action<System.Action<System.ComponentModel.PropertyChangedEventArgs>>)' has some invalid arguments E:\C#_Projects\Pokec_Messenger\Spirit_Caliburn_Micro_v1.0\ViewModels\AddFriendViewModel.cs  123 13  Spirit_Caliburn_Micro_v1.0

我不知道我必须在新版本中使用哪种方法才能实现相同的功能。

谢谢指点。

最佳答案

在最新版本(1.1.10425.0)中,需要使用FromEventPattern()

关于c# - Reactive Extension-新版本中旧版本的问题使用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6295682/

相关文章:

c# - 在c#中使用鼠标绘制矩形

c# - 在 C# 中关闭/解除绑定(bind) UDP 套接字

system.reactive - 将 IObservable<T> 异常吐出到单独的 IObservable<Exception> 中并正常继续

c# - 在 noda time LocalDate 和 Datetime 之间转换的最佳方法?

c# - Entity Framework 代码优先 : how to add more props on model and update database?

android - 如何更新存储列表值平均值的 TextView

c# - 可观察到 Rx 中的回调

c# - 为什么在没有 .NET 的 Reactive(Rx) 扩展的情况下不能使用 IObservable<T>?

wpf - WPF 中 .NET (Rx) 的响应式扩展 - MVVM

php - 观察者不保存订单