プロットはこれです-私はSave()
それ自体で検証メソッドを呼び出すメソッドを持っており、検証メソッドがエラーをキャッチした場合、メソッドの実行Save()
が停止されることを確認したいと思います。私が行ったことはbool
、検証のためのメソッドを作成することです。
protected virtual bool IsNullOrEmptyControl(params Control[] controls)
{
bool validationFlag = false;
foreach (Control ctrl in controls)
{
if (string.IsNullOrWhiteSpace(ctrl.Text))
{
ctrl.BackColor = System.Drawing.Color.Yellow;
if (validationFlag == false)
{
ctrl.Focus();
validationFlag = true;
}
}
}
if (validationFlag == true)
{
MessageBox.Show("The fields in yellow could not be empty", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
return false;
}
return true;
}
そして、私のメソッドを使用してそれを呼び出すSave()
:
public bool Save()
{
some code...
IsNullOrEmptyControl(txtClientCode, txtClientName);
some code..
clientService.Save(entity);
}
私のIsNullOrEmptyControl()
メソッドはbool
それが戻った場合なのでfalse
、これはそれ以上のコード実行の停止を意味すると思いましSave()
たが、私は間違っていたようです。では、これを行う正しい方法は何ですか?