国と呼ばれるテーブルを使用するriaドメインサービスでDataFormを使用しています。[OK]をクリックした後、データフォームがテーブルに新しい国を自動的に追加しないため、データフォームのEditEndingイベントでそれを行うコードを記述しました。
しかし、なぜEditEndingイベントの後にユーザー入力の検証が行われるのでしょうか。
名前のない新しい国を追加すると、EditEndingに入る前に検証エラーが表示されますが、現時点では検証エラーはありません。イベントが発生した後、検証エラーが発生します。
自動検証を使用してコードを機能させるにはどうすればよいですか?
private void CountryDataForm_EditEnding(object sender, DataFormEditEndingEventArgs e)
{
if (e.EditAction == DataFormEditAction.Commit)
{
if (CountryDataForm.Mode == DataFormMode.AddNew)
{
if (!CountryDataForm.ValidationSummary.HasErrors)
{
Country item = CountryDataForm.CurrentItem as Country;
item.CountryID = Guid.NewGuid();
GridData.SubmitChanges();
}
}
}
}