Конечно, вы можете поставить нулевую проверку внутри лямбда-функции:
return _dataContext.Files.Where(f => menuId == null || f.Menu.MenuId == menuId.Value).ToList();
Однако, если производительность вызывает какое-либо беспокойство, тогда ваша исходная версия предпочтительнее, потому что эта версия будет без необходимости вызывать .Where()
, когда menuId будет нулевым. (Вероятно, в большинстве случаев это будет незначительная разница.)