博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
bool?
阅读量:5982 次
发布时间:2019-06-20

本文共 1283 字,大约阅读时间需要 4 分钟。

public class GuestResponse    {        [Required(ErrorMessage = "Please enter your name")]        public string Name { get; set; }        [Required(ErrorMessage = "Please enter your email address")]        [RegularExpression(".+\\@.+\\..+", ErrorMessage = "Please enter a valid email address")]        public string Email { get; set; }        [Required(ErrorMessage = "Please enter your phone number")]        public string Phone { get; set; }        [Required(ErrorMessage = "Please specify whether you'll attend")]        public bool? WillAttend { get; set; }    }

Tip As noted earlier, I used a nullable bool for the WillAttend property. I did this so that I could apply the

Required validation attribute. If I had used a regular bool, the value I received through model binding could be only true
or false, and I wouldn’t be able to tell if the user had selected a value. A nullable bool has three possible values: true,
false, and null. The null value will be used if the user hasn’t selected a value, and this causes the Required attribute
to report a validation error. This is a nice example of how the MVC Framework elegantly blends C# features with HTML and
HTTP.

 

5.1下测试,如果不定义为 bool? ,如果未选择,绑定后值为false,但验证也未通过,实际接收的值为“”值。

转载于:https://www.cnblogs.com/dotnetmvc/p/3796913.html

你可能感兴趣的文章
vue 项目开发 lenovo商城
查看>>
来自crush的中序遍历完全二叉树
查看>>
生产环境项目部署目录
查看>>
Laravel 5.5 中文文档翻译完成(包含文档离线下载地址)
查看>>
关于javascript中的作用域和作用域链
查看>>
iView 一周年了,同时发布了 2.0 正式版,但这只是开始...
查看>>
.Net Performance[译]
查看>>
[LeetCode] Find Bottom Left Tree Value
查看>>
ubuntu16.04下nginx的基础配置教程
查看>>
程序员要有产品思维 - 收藏集 - 掘金
查看>>
一道有价值的JS继承面试题
查看>>
Amazon DynamoDB 入门8:删除项目
查看>>
vue2.0项目配置flow类型检查
查看>>
字符编码问题记录
查看>>
小米大数据:借助Apache Kylin打造高效、易用的一站式OLAP解决方案
查看>>
W3C官方推荐使用新发布的HTML5.2
查看>>
阿里云出现大规模宕机,原因系IO HANG,或将做出赔偿
查看>>
图数据库并非要取代区块链,而是让区块链如虎添翼
查看>>
中台之上(二):为什么业务架构存在20多年,技术人员还觉得它有点虚?
查看>>
jDays 2016综合报道
查看>>