问题描述
我有一堂课,上面有一些事件。目前,由于他们提出的好处,我决定转向“可观察的”。为了实现此目标,我引入了一个Observable属性,将其替换为事件之一。接下来,我将事件设置为“私有”,以限制类之外的访问。需要时,该事件在类内部使用函数进行调用。但是,我认为这样做可能是更好的方法。正确的做法是什么?顺便说一下,我是“ System.Reactive”的新手,所以如果我对该概念有误解,请澄清此事。我的代码如下:
public class MyClass
{
public MyClass()
{
InformationSenderObservable=Observable.FromEventPattern<SolutionEventArg>(ev =>InformationSender += ev,ev => InformationSender -= ev);
}
private event EventHandler<SolutionEventArg> InformationSender;
public IObservable<EventPattern<SolutionEventArg>> InformationSenderObservable { get; }
internal void DoSomething()
{
// long calculation
SendInformation();
}
private void SendInformation()
{
InformationSender?.Invoke(this,new SolutionEventArg()
{
InfoProxyData = GetDetailsForBestCompressedData(),ParallelProcess = parallelProcessing
});
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)