を使用してデータ検証を実行する際の「ベスト プラクティス」とは何ReactiveUI
ですか? 次のようなビュー モデルがあるとします。
public class MyViewModel: ReactiveObject
{
public ReactiveAsyncCommand SaveMyDataCommand { get; protected set; }
private string _email;
public string Email
{
get { return _email; }
set
{
_email = value;
raisePropertyChanged("Email");
}
}
private string _name;
public string Name
{
get { return _name; }
set
{
_name= value;
raisePropertyChanged("Name");
}
}
private bool _sendEmail = false;
public bool SendEmail
{
get { return _sendEmail; }
set
{
_sendEmail = value;
raisePropertyChanged("SendEmail");
}
}
public MyViewModel()
{
SaveMyDataCommand = new ReactiveAsyncCommand(null, 1);
}
}
検証したいのは次のとおりです。
- その場合
SendEmail == true
は、Email プロパティに有効な電子メール アドレスがあることを確認してください。(実際のメールアドレスの検証部分自体については心配していません。これは単なる仮定のシナリオです。) - プロパティに値が設定されている場合は
Email
、有効な電子メール アドレスであることを確認してください。 - 1. または 2. のいずれかが検証に失敗した場合、
SaveMyDataCommand
実行可能であってはなりません。
ReactiveUI を使用して単純なデータ検証を行う方法と、少し複雑なデータ検証を行う方法の良い例を探しています。誰でもこれに光を当てることができますか?