Есть ли существенная разница между .Find(id) и .Where(x = >x.Id == id), которая должна заставить меня использовать .Find() над .Where()/.First()?
Я бы предположил, что .Find() будет более эффективным, но настолько ли более эффективным, что я должен избегать .Where()/.First()?
Я прошу, что я использую общий набор FakeDbSet в своих тестах, чтобы упростить реализацию поддельных результатов, и до сих пор я обнаружил, что должен наследовать этот класс и предоставить пользовательскую реализацию .Find(), тогда как если я напишите мой код с помощью .Where()/.First() Мне не нужно делать эту дополнительную работу.