我无法使用system.linq.IQueryable返回值,有什么办法吗?

时间:2018-12-25 14:32:36

标签: c# linq

我有2个单独的服务,每个服务读取数据形成2个表。 现在在我的salPrice服务中,需要先从salPrice表中获取数据,然后再获取数据,我需要从另一个名为sysUser的服务中获取一个值 所以我在sysUser服务中编写了另一个方法来获取该值并返回 在我的salPrice中,我想添加e条件以检查salprice.GroupCode = sysUser.PosSection

在salPrice服务中

返回我的数据之前,我调用了该方法以从sysUser服务获取possection,并将其放在Var PosSection中。 所以我在sysUser中编写了一个新方法,但似乎无法返回字符串,并且出现了此错误:“无法将类型'string'隐式转换为'System.Linq.IQueryable'”

 public  IQueryable<SysUsers> GetCurrentPasSection(int userCode)
 {
    var query = $@"select PosSection from _sysusers where UserCode = {userCode}";
    string query1 = query;
    return query1;
}

2 个答案:

答案 0 :(得分:1)

您要编写的是字符串,而不是linq查询。请查看下面的示例。

var query = from x in _sysusers
   where UserCode = userCode
   select x;

return query;

答案 1 :(得分:0)

感谢我用这些代码解决的问题,这些代码返回了我需要的字符串。

var posSectionTMP = _UOW.Set<SysUsers>().Where(a => a.UserCode == userCode).FirstOrDefault().PosSection;