使用Rx native而不是Event

时间:2014-07-07 20:26:05

标签: c# .net event-handling system.reactive

我想使用e.cancel将事件代码转换为RX代码。

public void CounsumerMethod(object sender, EventArgs e) {
    if (x == 0) {
        e.Cancel = false;
    }
}

1 个答案:

答案 0 :(得分:1)

您无法有效地将此代码转换为正确的Rx代码,因为这不是Pure事件 - 事件的调用者(即框架代码)将立即检查“取消”值,而Rx不保证它会在上下文中设置该变量。你会制作一个有时可行的Observable,并在其他情况下神秘地失败。