将字符串转换为十进制,并将Linq与NHibernate 3.1进行比较



我有一个类似于的表

Name     Height
-------  ---------
Sam      "1.80"
Paul     "1.79"
Max      "1.81m"
Steve    "none"

我只想筛选身高>1.79的人。要做到这一点,我必须转换成十进制,然后进行比较。忽略值​​不是数字的,例如"none"。我尝试了Decimal.Passe()和Convert.ToDecimal(),但显示了一个错误System.NotSupportedException

peoples = peoples.Where(f => Convert.ToDecimal(f.Height) > 1.8);
peoples = peoples.Where(f => decimal.Parse(f.Height) > 1.8);

有解决方案吗??

Tks[]

Patrick Coelho

使用NH.Linq将数据库中的非数字值与数字进行比较的唯一方法是:

  1. 将列转换为数字列
  2. 加载所有值并在内存中进行比较(对于大型数据集不建议这样做

相关内容

  • 没有找到相关文章

最新更新