net core mvc 数据绑定 《1》

其它的绑定 跟net mvc 一样

》》MVC core 、framework 一样

1 模型绑定数组类型

2 模型绑定集合类型

3 模型绑定复杂的集合类型

4 模型绑定源

》》》》

模型绑定

使用输入数据的原生请求集合是可以工作的【request[],Querystring,request.from[]】,


但是从可读性和可维护性的角度来看,更好的方法是使用专门的模型来把数据公开给控制器。这种模型有时被称为 【输入模型】。

Asp.net MVC 提供了一个自动绑定层 ,使用内置的规则集将来自各种值提供程序的原始请求数据映射到输入模型类的属性。

作为开发人员,主要负责输入模型类的设计。

Core 模型绑定

FromForm特性

FromForm\]特性告诉模型绑定从提交的表单域中获取值, 模型绑定首先在表单数据中搜索值,因此大多数情况下我们不需要添加这个特性 》》》声明一个Model ```csharp public class Employee { public int Id { get; set; } public string Name { get; set; } } ``` ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/542874f49b1f4d059b83055fc8a34f25.png) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/f4cba6ddd5f443f7addd199c13e3393e.png) #### FromBody ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/f4e8aa14f3bf44b4b7578c6d8e3dee5b.png) #### 数据模型 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/09ad49beb4aa41a7ae2af2544548206d.png) ```csharp public Class UserInfo { //增加这个标注 则这个属性不会被绑定 [BindNever] public int Id { get => id; set => id = value; } private string name; private string password; public string Name { get => name; set => name = value; } public string Password { get => password; set => password = value; } //增加这个标注 则这个属性必须被绑定,如果没绑定 控制器中 ModelState.IsValid==false //将 用户名输入框注释,可测试这个标注 [BindRequired] public string Name { get => name; set => name = value; } } ``` ```csharp public IActionResult DoRegister(UserInfo userInfo) { if (ModelState.IsValid==false) { string message=ModelState.Root.Children[0].Errors[0].ErrorMessage; } return View(); } ``` ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/5ac6337b85554c73bd0486c524b65910.png) ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/b67afdae7e3540959ea9a402ca9cc78e.png) 其他验证 \[Required\];必填的属性。 \[Compare\]:验证模型中的两个性是否匹配 \[StringLength\]:验证字符串属性的最大长度 [数据验证](https://blog.csdn.net/litao2/article/details/134333383)

相关推荐
神仙别闹15 小时前
基于 JSP+Mysql实现MVC房屋租赁系统
java·mysql·mvc
optimistic_chen4 天前
【Java EE进阶 --- SpringBoot】初识Spring(创建SpringBoot项目)
spring boot·后端·spring·java-ee·tomcat·mvc·idea
不知名搬运工6 天前
9 ABP Framework 中的 MVC 和 Razor Pages
mvc
周杰伦fans8 天前
.NET Core MVC中CSHTML
mvc·.netcore
右手嘚温暖8 天前
SpringMvc的原理深度剖析及源码解读
spring·开源·mvc
Alt.910 天前
SpringMVC(二)
java·开发语言·mvc
ysy164806723912 天前
Spring、Spring MVC、MyBatis 和 Spring Boot的关系
spring·mvc·mybatis
探索java13 天前
Spring MVC框架中全局异常处理机制详解
java·spring·mvc
可曾去过倒悬山13 天前
SpringMvc跨域配置方法详解
spring·mvc
Alt.913 天前
SpringMVC(一)
java·mvc