バインディングそれはProperyから除外されていてもNULL値を更新しているフィールドは、次のように私がモデルを持っている
public ActionResult MyProfile(int id)
{
var currentUser = _context.ApplicationUsers.Find(applicationuser.Id);
return View(currentUser);
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult MyProfile([Bind(Exclude="Password")]ApplicationUser applicationuser)
{
if (ModelState.IsValid)
{
_context.Entry(applicationuser).State = EntityState.Modified;
_context.SaveChanges();
return RedirectToAction("Index");
}
return View(applicationuser);
}
ここでPOSTメソッドは、FullNameとのメールフィールドを正しく更新しています。しかし、それはパスワードフィールドにNULL値を更新しています。これを避ける方法は?
はあなたが結合(申し訳ありませんが、と多くの作業を行っていないにパスワードを除外することを語っていないされる前にバインドattribute'll入れ、この行をあなたを助けません組み込みのモデルバインダー)。あなたはそれがヌルになるとは思わないでしょうか? –
私は "パスワード"フィールドを更新したくない、私は初期値が常に存在したい。 –
文字列のデフォルト値はNullです。モデルバインダーにPasswordプロパティを無視するように指示しているので、何も設定されません。 –