问题
I write a linq to Entity:
string[] groups = GetGroups();
var fList = from f in _store.wcf_ServerFarm
join a in _store.ClientAccess on f.ServerFarmName equals a.AccessServerFarmName
join s in _store.Service on f.ServerFarmName equals s.ServerFarmName
where groups.Contains(s.ServerMachineName)
select new { f.ServerFarmAddress, s.ServerMachineName, s.ServiceName, s.ServiceConfig, s.ServicePath };
But .net 3.5 didn't support Contains(), I couldn't upgrade it for some reason. how to figure out it. I try to use "Any(), esql" and so on ,didn't work. Thanks!
回答1:
Here is described workaround with building custom expression. Internally it builds a query concatenating a lot of OR
operators. No better workaround is probably available for LINQ in EFv1. Entity SQL should work without problem.
来源:https://stackoverflow.com/questions/6994730/how-to-workaround-contains-for-net-3-5-dont-support