我有一个“t_cftc_ir_swaps
”一表以下字段空值在LINQ比较表达式
T_CFTC_IR_SWAP_ID Integer (Autonumber, PK)
PRODUCT Varchar
TRADEVOLUME_TYPE Varchar
TRADEVOLUME_BUCKET_1 Varchar
TRADEVOLUME_BUCKET_2 Varchar
TRADEVOLUME_GROUP Varchar
TRADEVOLUME Integer
RELEASE_DATE Date
TRADE_DATE Date
我使用实体框架的代码级别。我正试图在此表中插入一条记录。但在此之前,我正在检查表中是否存在该记录。为此目的,我有一个“RecordAlreadyExists”功能的代码如下
中的一些数据表中,我们有“TRADEVOLUME_BUCKET_2”空值的记录现在,但同时插入一个新的记录,如果我尝试将所添加的记录(对于TRADEVOLUME_BUCKET_2为空值)与基础表记录进行比较,即使我可以查询数据库并查看表中的匹配记录,它也会返回“0”记录。
在代码中断处,这是我尝试插入的记录。正如你可以看到它是否有“TRADEVOLUME_BUCKET_2”
与我们正在尝试添加记录匹配的记录计空值“0”
当我在数据库级别运行查询我确实已经在基础表中获得匹配记录
我甚至试图在代码中使用的DBNull如下
但出现以下情况例外,当我尝试这样做,在运行时 “无法创建类型的空恒定值“系统。目的'。只有实体类型,枚举类型或基本类型在这种情况下”
我应该如何比较使用LINQ查询空值的支持?
EF向数据库发送什么查询? – 2014-10-29 11:07:31
您使用哪个版本的EF? – RobH 2014-10-29 11:17:17
@GertArnold - EntityFramework,Version = 5.0.0.0 – Asif 2014-10-29 11:31:47