Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何可靠地检查可空属性是否不包含数据?DBNull要杀了我

如何可靠地检查可空属性是否不包含数据?DBNull要杀了我
EN

Stack Overflow用户
提问于 2011-04-09 05:14:16
回答 4查看 2.2K关注 0票数 3

我已经开始使用Rob Conery的“大块头”。很棒的小"ORM“和非常出色的表演。但是,我在可空字段的System.DBNull比较中遇到了问题。

例如,我想检查一个属性是否与另一个属性匹配(在本例中,是一个长类型)。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
if (obj.MemberId == otherObj.MemberId) return true;

抛出异常:运算符'==‘不能应用于'System.DBNull’和'long'类型的操作数。在本例中,obj.MemberId为null (更具体地说,为DBNull)。

好的,我先检查一下是否是DBNull.Value,对吧?如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
if (obj.MemberId != DBNull.Value)
    return obj.MemberId == otherObj.MemberId;

很酷,至少在obj.MemberId是DBNull时是这样,但是当它不是(包含一个long)时,另一个例外:运算符'!=‘!’不能应用于'long‘和'System.DBNull'类型的操作数。

DBNull要杀了我。如何可靠地检查可空属性是否不包含数据?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-04-09 05:18:35

你试过用is操作符吗?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
if (obj.MemberId is DBNull)
{
    // it is null
    return false;
}
else
{
    // has some value
    return obj.MemberId == otherObj.MemberId;
}
票数 6
EN

Stack Overflow用户

发布于 2011-04-09 05:41:03

票数 1
EN

Stack Overflow用户

发布于 2011-04-09 05:18:49

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
if (!DBNull.Value.Equals(obj.MemberID) && obj.MemberID !=null && obj !=null)

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
if (!DBNull.Value.Equals(obj) && obj.MemberID !=null && obj !=null)

选择任何适用于您的案例。这会给你一张完整的证明支票。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5605227

复制
相关文章
如何检查 Java 数组中是否包含某个值 ?
在逛 programcreek 的时候,我发现了一些专注细节但价值连城的主题。比如说:如何检查Java数组中是否包含某个值 ?像这类灵魂拷问的主题,非常值得深入地研究一下。
用户7886150
2021/04/28
9.1K0
如何检查一个对象是否为空
检查一个数组为空很容易,直接调用 length 方法即可,那么如何检查一个对象是否为空呢 ❓
JS菌
2019/04/10
4K0
如何检查一个对象是否为空
js/es6判断对象是否为空,并判断对象是否包含某个属性
1、把对象通过 JSON.stringify 转为字符串,再判断字符串是否等于 ” {} “
全栈程序员站长
2022/09/05
2.7K0
如何检查 MySQL 中的列是否为空或 Null?
在MySQL数据库中,我们经常需要检查某个列是否为空或Null。空值表示该列没有被赋值,而Null表示该列的值是未知的或不存在的。在本文中,我们将讨论如何在MySQL中检查列是否为空或Null,并探讨不同的方法和案例。
网络技术联盟站
2023/07/14
1.4K0
如何检查 MySQL 中的列是否为空或 Null?
如何检查 MySQL 中的列是否为空或 Null?
在MySQL数据库中,我们经常需要检查某个列是否为空或Null。空值表示该列没有被赋值,而Null表示该列的值是未知的或不存在的。在本文中,我们将讨论如何在MySQL中检查列是否为空或Null,并探讨不同的方法和案例。
网络技术联盟站
2023/08/03
3.3K0
如何检查 MySQL 中的列是否为空或 Null?
灵魂拷问:如何检查Java数组中是否包含某个值 ?
另外,我想要告诉大家的是,作为程序员,我们千万不要轻视这些基础的知识点。因为基础的知识点是各种上层技术共同的基础,只有彻底地掌握了这些基础知识点,才能更好地理解程序的运行原理,做出更优化的产品。
沉默王二
2019/12/17
4.8K0
Map 类集合键值对是否可空?
集合类 Key Value Super 说明 Hashtable 不允许为 null 不允许为 null Dictionary 线程安全 ConcurrentHashMap 不允许为 null 不允许为 null AbstractMap 分段锁技术 TreeMap 不允许为 null 允许为 null AbstractMap 线程不安全 HashMap 允许为 null 允许为 null AbstractMap 线程不安全 参考:阿里巴巴 Java 开发手册
水货程序员
2018/11/13
2.4K0
Java检查枚举是否包含给定的字符串?
enum choices {a1, a2, b1, b2}; 方法一: public static boolean contains(String test) { for (Choice c : Choice.values()) { if (c.name().equals(test)) { return true; } } return false; } 方法二: EnumUtils.isValidEnum(MyEnum.cla
似水的流年
2019/12/06
4.4K0
要查询对象存在,但是属性值都为空
场景:在使用spring与mybatis整合实现简单的登录功能时,发现登陆成功后,user对象存在,但是输出user的id或者name时,却显示0或者null。
Charles-LZ
2019/07/02
1.2K0
Bucket不为空,请检查该Bucket是否包含未删除的Object或者未成功的Multipart碎片
异常处理汇总 ~ 修正果带着你的Net飞奔吧!http://www.cnblogs.com/dunitian/p/4599258.html 图示解决==>详细如下:
逸鹏
2018/04/09
1.6K0
Bucket不为空,请检查该Bucket是否包含未删除的Object或者未成功的Multipart碎片
js判断序列化表单是否包含空值
<form id="form1"> <input type="text" value="1" name="Total" /> </form> //判断序列化表单是否包含空值 var data = $("#form").serialize(); var array = data.split("&"); for (var i = 0; i < array.length; i++) { var kwarr = array[i].split("="); for (var j = 0; j
小语雀网
2021/09/08
3.4K0
JS如何判断一个对象是否为空、是否有某个属性「建议收藏」
大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说JS如何判断一个对象是否为空、是否有某个属性,希望能够帮助大家进步!!!
Java架构师必看
2022/01/21
4.6K0
如何优雅的判断一个对象的属性是否全部为空
马上能想到的一个方案是,一个一个判断对象中的属性。这个倒也可以,但是如果要判断的对象比较多,就得给每个对象写一个判断方法(因为每个对象的属性都不一样)。
用户7634691
2020/08/10
9.2K0
有趣!你会检查单元格是否包含日期吗?
大家知道,Excel将日期存储为数字,只是显示的是日期格式,例如,Excel单元格中显示的是2022年5月10日,但实际上存储的是数字44691。
fanjy
2022/06/04
1.8K0
有趣!你会检查单元格是否包含日期吗?
检查第三方库是否包含 bitcode 信息
iOS 9 发布后,开发者可以提交包含 bitcode 的程序到APPStore。当 llvm 更新或者新款手机使用了新的cpu命令集架构时,苹果可以使用最新的llvm版本重新将bitcode编译为安装包,确保能够充分利用新的llvm的最新优化或者适配最新的cpu命令集架构,避免了开发者手动提交新安装包的繁琐过程。
酷酷的哀殿
2020/11/20
1.7K0
PHP检查对象或类中是否存在属性
$obj = \app\common\library\Email::instance(); $obj->p=889; if(isset($obj->p)){ echo 66; }else{ echo 99; } die; isset既可以判断对象的属性是否存在,也可以判断数组的键名是否存在 未经允许不得转载:肥猫博客 » PHP检查对象或类中是否存在属性
超级小可爱
2023/02/20
4.2K0
python 如何判断字典是否为空?
在python里,{},[],(),等都等价于False! if dict: print 'not Empty'
py3study
2020/01/09
21.3K0
java如何判断对象为空_java对象如何判断是否为空
在实际书写代码的时候,经常会因为对象为空,而抛出空指针异常java.lang.NullPointerException。
全栈程序员站长
2022/06/25
13.4K0
java如何判断对象为空_java对象如何判断是否为空
如何优雅判断属性值为空
假设我们现在需要取出 a.b.c,但是并不清楚它们是否都存在,那么代码会写成这样:
前端达人
2019/12/24
4K0
如何优雅判断属性值为空
点击加载更多

相似问题

如何检查DataRow是否不包含空值

20

可空失败- dbnull到整型

23

检查数据属性是否为空

10

检查值是否为DBNull

31

如何检查属性是否包含属性

40
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文