微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

我是.NET的新手我之前的工作是PLC程序员.我有旧的应用程序,我使用Reactive Extension for .NET.

我很长时间没有维护这个应用程序.现在我为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);

我有这个例外:

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()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐