LinQ无法识别方法' int32 toint32'

时间:2014-09-01 12:34:55

标签: c# linq

我一直在谷歌搜索:linq to entities does not recognize the method int32 toint32。 我在我的数据库中有这个列表,如varchar

  

1,2,3,4,5,6,7。

我需要订购该列表并获取最大值。我使用它但它不起作用,我也看到了其他解决方案,但没有任何效果。这是我的问题:

var query= dbcontext.NV_Users.OrderBy(p => Convert.ToUInt32(p.code)).ToList().Max();

我正在尝试使用普通查询,但也无法正常运行:

var query= from _NV_Field in dbcontext.NV_Users
           orderby Convert.ToInt32(_NV_Field.code) ascending
           select _NV_Field.code;

在问这里之前,我一直在疯狂地搜索谷歌。

2 个答案:

答案 0 :(得分:0)

由于您使用的是.ToList(),因此您可以更改功能的顺序:

var query= dbcontext.NV_Users.ToList().OrderBy(p => Convert.ToUInt32(p.code)).Max();

答案 1 :(得分:0)

最后我找到了解决方案。我需要转换选择

上的字段
 var consulta = from _NV_Fabricantes in dbcontext.NV_Fabricantes.ToList().OrderBy(p =>     Convert.ToInt32(p.codigo)) 
                            select Convert.ToInt32(_NV_Fabricantes.codigo);