Как это сделать в Linq?И ISNULL, и YEAR SQL-функции в Linq
SELECT [...] WHERE A.Year = YEAR(ISNULL(B.Date, '1900-01-01'))
типы данных полей:
A.Year : int not null
B.Date : datetime null
Как это сделать в Linq?И ISNULL, и YEAR SQL-функции в Linq
SELECT [...] WHERE A.Year = YEAR(ISNULL(B.Date, '1900-01-01'))
типы данных полей:
A.Year : int not null
B.Date : datetime null
LINQ к Entities:
(...)
where a.year == SqlFunctions.DatePart("y", b.date ?? new DateTime(1900, 1, 1))
LINQ к SQL:
(...)
where a.year == (b.date ?? new DateTime(1900, 1, 1)).Year
Не зная, что ваши структуры данных выглядеть .NET сторона вещей ...
var defaultDate = new DateTime(1900, 1, 1);
var result = from x in xxx
where x.Year == (b.Date ?? defaultDate).Year
.Where(f => f.Year == (B.Date ?? new DateTime(1990, 1,1)).Year)