How would I convert this query from SQL to Linq:
SELECT status As 'Status', count(status) As 'Count' FROM tbl_repair_order WHERE contract = 'con' and (status = 'Parts Arr' or status = 'NA' or status = 'New Call' or status = 'Parts Ord' or status = 'Parts Req' or status = 'F Work') GROUP BY status Update
Thanks Guys, this is the code I used. Tested and returns the same as above:
List<string> statuses = new List<string> { "Parts Arr", "NA", "New Call", "Parts Ord", "Parts Req", "F Work"}; var result = (from x in db.tbl_repair_orders where x.CONTRACT == strContract && statuses.Contains(x.STATUS) group x.STATUS by x.STATUS into grouping select new { Status = grouping.Key, Count = grouping.Count() }); return result;
.Contains()call does correctly translate to LinqToSql (and maybe to the EF as well) - blog.wekeroad.com/2008/02/27/…