我有一个看起来像这样的属性类
ZipStart | ZipEnd | Acode
10000 | 13999 | BEK
14000 | 14999 | ATE
现在,我有一个值,例如11332,我想查找该号码属于哪个Acode,为此我有以下代码:
var res = from o in ListOfDataClass
where iCode >= o.ZipStart && o.ZipEnd <= iCode
select o;
var c = res.FirstOrDefault();
return c.Acode;
然而,这不时会导致null,但我还是找不到模式,但是由于这个方法出现了问题,我已经能够从调试器中扣除iCode IS实际上是11332但是LINQ查询不会产生任何结果。
有什么想法吗?
答案 0 :(得分:5)
您的情况不正确
第二部分必须是o.ZipEnd >= iCode
或iCode <= o.ZipEnd
。
答案 1 :(得分:1)
我认为你必须稍微改变一下你的状况:
where iCode >= o.ZipStart && iCode <= o.ZipEnd