Я пытаюсь удалить несколько строк из таблицы.
В обычном SQL Server это было бы просто:
DELETE FROM Table
WHERE
Table.Column = 'SomeRandomValue'
AND Table.Column2 = 'AnotherRandomValue'
В Entity Framework 6 они внедрили метод RemoveRange().
Однако, когда я использую его, вместо того, чтобы удалять строки, используя предложения where, которые я предоставил, Entity Framework запрашивает базу данных, чтобы получить все строки, которые соответствуют предложениям where и удаляют их один за другим, используя их первичные ключи.
Является ли это текущим ограничением EntityFramework?
Или я использую RemoveRange()
неправильно?
Ниже я использую RemoveRange()
:
db.Tables.RemoveRange(
db.Tables
.Where(_ => _.Column == 'SomeRandomValue'
&& _.Column2 == 'AnotherRandomValue')
);