Viewクラスのinputなどで、POSTされた値が、ModelStateにセットされ、セットされた値が優先して、Viewクラスに返却されるのか?

ASP.NETを利用して、WEBアプリの製造を行っている過程で、気になった部分があったため、質問させていただきます。ご回答いただければ幸いです。

前提

画面のテキストボックスに入力した値を、画面上にあるボタンを押すことでPOSTして、画面上のテキストボックスの中身が、初期表示時の値に変化するという処理をControllerクラスに記述していました。

発生した現象

最初に記述した際には、ボタンが押されても、画面上のテキストボックスの中身が初期状態に変化することはありませんでした。その解決のために、初期表示の値を格納する処理の前に以下の処理を追記しました。

C#

ModelState.Clear()

この処理を記述することで、解決したのですが、その際に参考にした下記URLのサイトに「ModelState に値が設定されている場合は ModelState の値が優先されてビューに返却されます」という記述がありました。

質問

なぜ、Viewクラスのinputなどで、POSTされた値が、ModelStateにセットされ、セットされた値が優先して、Viewクラスに返却されるのでしょうか?

引用サイト

(https://sorceryforce.net/ja/tips/asp-net-core-post-value-change)

コメントを投稿

0 コメント