Я пытаюсь выполнить это, но только мое первое условие where используется при выполнении запроса.
Это необходимо для .Net 3.5, поэтому WhereIf в 4.0 не может использоваться.
var query =
from tb in dataContext.TableOne
where tb.DateTimeCreated >= fromDate &&
tb.DateTimeCreated <= toDate.AddDays(1)
select tb;
if (!string.IsNullOrEmpty(reference))
{
query.Where(tb => tb.Reference = reference));
}