我有一个没有返回结果的linq查询
PermitsList = (from n in context.Permits
join d in context.TrafficDisruptions on n.GUID equals d.PermitGUID
select n);
我知道这个sql查询确实返回了预期的结果
SELECT * FROM [KEPT].[dbo].[Permit] p join TrafficDisruption d on p.GUID = d.PermitGUID
有关为何会发生这种情况的任何想法吗?
由于
答案 0 :(得分:4)
如果您的GUID在模型中被表示为字符串,则可能会遇到区分大小写的LINQ to Entities中的错误。
如果连接字符串字段并且字符串的情况不同,则SQL将返回正确的结果(假设数据库的排序规则不区分大小写)但LINQ将无法正确匹配外键。这在查询和导航属性中都会发生。
这可能不是你的问题,但可能需要注意。