Да, я думаю, что это эффективно. Этот код на самом деле не будет выполнять запросы, потому что он не пытается что-либо прочитать из «журналов». Когда это происходит, он должен учитывать оба условия в одном и том же запросе (т. Е. Предложение WHERE, которое включает оба условия).
НО, если вы используете LINQ и беспокоитесь об эффективности, вам действительно нужно проверять все, что вы пишете, используя инструменты, чтобы посмотреть, какие запросы на самом деле выполняются. Вы можете сделать это с помощью SQL Server Profiler.