ビューからモデルを受け取っています。
一部の値は自動的に入力されます。
ただし、次のように、必要な値の一部を手動で追加する必要があります。
[HttpPost]
public ActionResult Foobar(FooModel model, FormCollection collection)
{
// "timePicker" is a dropdown list containing different times
var time = collection["timePicker"].Split(':');
model.Hours = int.Parse(time[0]);
model.Minutes = int.Parse(time[1]);
if (ModelState.IsValid)
{
... // Do stuff
}
}
だからここに問題があります:
ModelState.IsValid
は偽です。私はそれをデバッグしましたが、とが割り当てられていない
と主張しています。...値を割り当て
たばかりなので、これは正しくありません!model.Minutes
model.Hours
の使用を検討しModelState.Clear()
ましたが、残りのすべての情報が有効かどうかを手動で確認する必要はありません。
問題を解決する他の方法はありますか?