Это мой запрос из таблицы Persons со столбцом имени nullable varchar:
(from p in Persons
where p.Name == null || p.Name.Equals(String.Empty)
select p).Count()
В .NET 4.0 он переводится в:
DECLARE @p0 VarChar(1000) = ''
SELECT COUNT(*)
FROM [Persons] AS [t0]
WHERE ([t0].[Name] IS NULL) OR ([t0].[Name] = @p0)
, однако в .NET 3.5 в:
DECLARE @p0 VarChar(1000) = ''
SELECT COUNT(*)
FROM [Persons] AS [t0]
WHERE ([t0].[Name] = @p0)
Кажется, что 3.5 игнорирует некоторые записи, дающие неверные результаты.