従業員に割り当てられる WorkOrder というエンティティがあります。
作業指示書が割り当てられたときに電子メール通知を送信したい。これは、MVC の作成または編集アクション (POST) で発生する可能性があります。
私が抱えている問題は、編集で値が変更されたかどうかを確認して、メールを送信する必要があるかどうかを確認する必要があることです。
エンティティ モデル自体のように、SendEmail 関数を呼び出すのに適した場所はありますか?
従業員に割り当てられる WorkOrder というエンティティがあります。
作業指示書が割り当てられたときに電子メール通知を送信したい。これは、MVC の作成または編集アクション (POST) で発生する可能性があります。
私が抱えている問題は、編集で値が変更されたかどうかを確認して、メールを送信する必要があるかどうかを確認する必要があることです。
エンティティ モデル自体のように、SendEmail 関数を呼び出すのに適した場所はありますか?
ビューからの投稿について話している場合は、ビューをロードするときに、既存の値を作成してフォームの非表示フィールドにバインドできます。次に、アクションへの POST で、フィールドの値が隠しフィールドの値と異なるかどうかを確認できます。
ビューの例:
@using (Html.BeginForm("MyAction", "MyController")
{
@Html.HiddenFor(m => m.CurrentValue)
@Html.TextBoxFor(m => m.Value)
<input type="submit" value="submit" />
}
アクションGETの例
public ActionResult MyAction()
{
var viewModel = GetModelFromSomeWhere();
viewModel.CurrentValue = viewModel.Value;
return this.View(viewModel);
}
アクション POST の例
[HttpPost]
public ActionResult MyAction(ViewModel model)
{
if (model.Value != model.CurrentValue)
{
// It has changed! Send that email!
}
}