当字符串以零开头时,条件出现问题的Lambda表达式

本文关键字:问题 表达式 Lambda 条件 字符串 开头 | 更新日期: 2023-09-27 18:09:34

当尝试在字符串上的条件从零开始linq lambda表达式遇到麻烦,它不工作

CityCode字段类型为字符串。

例如:

var hospitals=context.Hospitals.Where(p=>p.CityCode=="01");

那么它不会从数据库返回任何行。

但是当尝试这个:

var hospitals=context.Hospitals.Where(p=>p.CityCode=="21");

效果很好。

如何解决这个问题?

请帮

当字符串以零开头时,条件出现问题的Lambda表达式

我想知道这到底是怎么回事。这取决于CityCode

的类型
  • 如果你比较int值,你应该使用.Where(p=>p.CityCode== 1);

  • 如果你比较char的值.Where(p=>p.CityCode=='1'); //only one character is valid

  • 如果CityCode是string.Where(p=>p.CityCode=="21");