- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我一直在使用 ReactiveUI 创建 View 模型并将它们绑定(bind)到我的 WPF View 。在这些 View 模型中,我使用 UserError 来包装异常并将它们转发到关联的 View 。
但是,我注意到当抛出 UserError 时,它并不总是最终出现在预期的处理程序中。为了解决这个问题,我使用 UserError.RegisterHandler<MyUserErrorSubclass>(myHandler)
将 UserError 子类化并仅为该子类注册了处理程序。
这似乎有效,但并不能完全解决问题。
我现在有两个相同 View 模型和关联 View 的实例,但是在一个 View 模型中引发的 UserError 最终会出现在错误的 View 中。这是一个问题,因为我想显示一条错误消息,但它显示在错误的 View 中。
示例代码:
class ViewModel : ReactiveObject {
...
public ReactiveCommand<object> ExampleCommand { get; }
ViewModel(){
...
ExampleCommand.ThrownExceptions.Subscribe(ex => UserError.Throw(new UserError("Error!")));
}
}
class View : IViewFor<ViewModel> {
...
Label exampleLabel;
View(){
...
UserError.RegisterHandler(userError => {
exampleLabel.Text = userError.ErrorMessage;
});
...
}
...
}
ViewModel aModel = new ViewModel();
View aView = new View { ViewModel = aModel};
ViewModel bModel = new ViewModel();
View bView = new View { ViewModel = bModel};
aModel.Example()
套
bView.exampleLabel
, 而我需要设置
aView.exampleLabel
最佳答案
我通过查看 ReactiveUI 源代码弄清楚了。
如果您在无法处理的处理程序中收到 UserError,则应该返回 null。然后将 UserError 传递给下一个注册的处理程序。
示例代码:
UserError.RegisterHandler(userError => {
if(cannotHandleThisError){
return null;
}
exampleLabel.Text = userError.ErrorMessage;
});
关于C# ReactiveUI UserError 错误处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39245094/
我一直在使用 ReactiveUI 创建 View 模型并将它们绑定(bind)到我的 WPF View 。在这些 View 模型中,我使用 UserError 来包装异常并将它们转发到关联的 Vie
大多数(如果不是全部)在线示例注册一个处理程序,但随后返回一个离散的 Observable 值(即 Observable.Return(RecoveryOptionResult.CancelOpera
在阅读network package的源代码时,我注意到 ioError (userError ("Error description")) 的广泛使用来在 IO 操作期间引发错误。 由于这不是我第一
警告: warning = { 'title': _('Warning!'), 'message': _('Exists
我有一个 Controller ,它在models.py中调用 action_approve 函数,最后返回一个网页: class Holiday(http.Controller): @htt
我想在裸机服务器上部署octohost。据我到目前为止了解,s刀solo旨在使用ssh直接在服务器上进行厨师供应? 但是,当我遵循second step时,我得到: ~/octohost-cookbo
我正在尝试使用 graalvm-ce 构建我的 Docker 镜像,但它失败,显示错误为: 根据 Oracle 博客文章,我也提到 Java 类作为起点,但仍然失败。 Error: Main entr
我是一名优秀的程序员,十分优秀!