入力してデータグリッドに表示したデータをユーザーが挿入、更新、削除できるアプリケーションを作成しています(CRUD操作)。
私のビューモデルでは、xamlにバインドされているプロパティが含まれています(Firstname
たとえば)。また、ナビゲーションプロパティと検証属性も含まれています。
[Required(ErrorMessage = "First Name is a required field")]
[RegularExpression(@"^[a-zA-Z''-'\s]{1,20}$", ErrorMessage = "First Name must contain no more then 20 characters and contain no digits.")]
public string FirstName
{
get { return _FirstName; }
set
{
if (_FirstName == value)
return;
_FirstName = value;
OnPropertyChanged("FirstName");
}
}
xaml
さらに、 CRUD操作のインスタンスを作成する実行するコマンドが含まれています。
private void UpdateFormExecute()
{
var org = new OrganisationTypeDetail();
UpdateOrganisationTypeDetail(org);
}
そして最後に、CRUD操作も含まれています。挿入、更新、削除など。
それが私の質問につながります。正しいMVVMの方法を実装したい場合、このコードはすべて、ビューモデルに含めるには多すぎますか?
モデルを使用してビューモデル内にコレクションを作成し、それを自分のモデルにバインドする必要がありますxaml
か?これはそれを行う正しい方法でしょうか?
CRUD操作にリポジトリシステムを使用する必要がありますか?もしそうなら、どのようにテキストフィールドからモデルにデータを渡して更新するのですか?
WPF、MVVMは初めてで、適切なガイダンスなしでは適応するのが難しいと感じています。