0

我有以下代码摘录,并收到上述错误。这是一个非常简单的查询,当然可以在 SQL 中完美运行。我错过了什么?

public IEnumerable<PAYSHIST> GetPayrollCriteria(string COID, IEnumerable<ASITE> sites)
{
    var recs = from p in _entities.PAYSHISTs
               join a in sites on p.SITE_CODE equals (a.SALES_ACC + a.SITE_NUMBER.ToString("000"))
               select p;
    return recs;
}
4

1 回答 1

1

您不能将内存中的集合与数据库表连接起来。尝试按如下方式编写查询,而不是使用Contains

var recs = from p in _entities.PAYSHISTs
           where sites.Select(a => a.SALES_ACC + a.SITE_NUMBER.ToString("000"))
                 .Contains(p.SITE_CODE)
           select p;
于 2013-05-20T15:58:15.680 回答