网站开发:ASP.NET Core Model Binding
form is a basic method of sending data to server.
razor pages have 3 components for this: 1. model binding 2. form tag helper 3. validation framework
Data annotation can provide additional information to types.
bootstrap 如果要强制 inline form,需要用 div.input-group 把同行的元素包起来。
checkbox 和 radio 类型的控件,都是通过 name 、value 属性来传递数据的。
checkbox 可以通过绑定 List<string> 来传递数据,radio 则只需要一个 string。多个 radio 可以公共一个 name,来强迫唯一选择。
对于 checkbox,需要确保有 name 属性,而且与要绑定的 List<string> 属性名字相同。
post 之后,最好 redirect 到一个 get 页面,来防止用户不小心刷新网页而重复提交数据。
可用 Request.Form["名称"] 来访问用户 post 的数据。
form 中定义好的 name,可以在 OnPost 的参数中直接去获取。
也可以通过bind property去获取(不要求 name 和 property 大小写一致)。