Nullable<T>、?、??

本文介绍了.NET中Nullable的功能和用法,解释了如何使用Nullable来处理可空的值类型,包括int?类型的使用场景及如何通过??运算符来进行安全的null值检查。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在使用MVC开发时,使用了EF进行数据库和model间的映射。发现生成的model代码中有Nullable,对应的数据库字段则是可空的。在利用model赋值时,如果字段被赋值了null,则可以通过。如果不小心删除Nullable,则在给字段赋null时就会出错。也可以使用?代替Nullable。
Nullable是.NET 2.0中新提供的一种用于标明一个值类型是否可以为空的技术。
int?:表示可空类型,就是一种特殊的值类型,它的值可以为null
用于给变量设初值得时候,给变量(int类型)赋值为null,而不是0
int??:用于判断并赋值,先判断当前变量是否为null,如果是就可以赋设个新值,否则跳过
public int? a=null
public int b() { return this.a ?? 0; }
int? num = null;   正确 int num = null;     错误
作者:KeepMoving
出处: http://www.cnblogs.com/KeepMovingblog/ 
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值