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)

相关推荐
周杰伦fans3 天前
.net core webapi/mvc阿里云服务器部署 - 错误解决
阿里云·mvc·.netcore
BFT白芙堂3 天前
GRASP 实验室研究 论文解读 | 机器人交互:基于神经网络引导变分推理的快速失配估计
人工智能·神经网络·机器学习·mvc·人机交互·科研教育机器人·具身智能平台
William_cl3 天前
MVC 中 AJAX 与前后端交互深度实战(含独家避坑与场景化方案)
ajax·mvc·交互
Cyan_RA94 天前
SpringMVC 执行流程分析 详解(图解SpringMVC执行流程)
java·人工智能·后端·spring·mvc·ssm·springmvc
hello 早上好5 天前
Spring MVC 类型转换与参数绑定:从架构到实战
spring·架构·mvc
sanggou5 天前
License 集成 Spring Gateway:解决 WebFlux 非阻塞与 Spring MVC Servlet 阻塞兼容问题
spring·gateway·mvc
optimistic_chen5 天前
【Java EE进阶 --- SpringBoot】Spring DI详解
spring boot·笔记·后端·spring·java-ee·mvc·di
速易达网络5 天前
ASP.NET MVC 连接 MySQL 数据库查询示例
数据库·asp.net·mvc
cyforkk6 天前
Spring 异常处理器:从混乱到有序,优雅处理所有异常
java·后端·spring·mvc
Cloud-Future8 天前
Spring MVC 处理请求的流程
java·spring·mvc