我在EF中编写了一个select语句,当我使用SQL Server Express作为数据库时,它执行得很好。但是当我将数据库更改为SQL Server CE版时,会发生以下错误:
此位置不允许使用参数。确保' @' sign位于有效位置,或者此SQL语句中的参数完全有效
我的代码:
(from r1 in _db.Products
join r2 in _db.SaleDetails on r1.ID equals r2.PID into g
from r2 in g.DefaultIfEmpty()
group new { r1, r2 } by r1.Code.Substring(0, _Group.Code.Length + 3) into g
select new
{
GroupCode = g.OrderBy(p => p.r1.Code.Length).FirstOrDefault().r1,
Sum1 = g.Where(p => p.r2.IsMain).Select(p2 => p2.r2.Fee).DefaultIfEmpty(0).Sum(),
Sum2 = g.Where(p => !p.r2.IsMain).Select(p2 => p2.r2.Fee).DefaultIfEmpty(0).Sum()
}).ToList();