我认为这有一个特定的答案。CanExecute中应该包含哪些内容?
如果我有一个命令结合
private bool CanExecute(Object args){
// Should this just be null checks?
// Should it also contain logic?
// example:
return this.SelectedObject != null;
// or
return this.SelectedObject != null && this.SelectedObject.Status == 1;
}
private void Executed(Object args){
//Or should logic be reserved for the Executed command
if(this.SelectedObject.Status == 1)
//Do stuff
else
//Don't do stuff
}
这似乎是多余的有一个可以执行的方法,如果我们的执行方法中做更多的数据验证。
将其他方法中的数据验证内容移到'CanExecute()'中? – DGibbs 2014-09-25 12:00:11
'我知道这似乎主要是基于意见'和'但我认为这是一个具体的答案'这两个完全不同的东西:) – Shaharyar 2014-09-25 12:00:57
@Shaharyar我正在寻找像约翰Skeet的人来衡量,并说如果有一个工业标准。 – 2014-09-25 12:01:34