Entity Framework не знает всю вашу базу данных, он знает только те записи, которые вы уже загрузили в свой контекст. Поэтому он не может определить максимально используемый идентификатор в данной таблице.
У вас есть 3 варианта здесь:
Используйте функцию вашей БД для автоматической установки идентификатора, столбец идентификаторов с автоинкрементным увеличением
или
Напишите в вашей базе данных функцию, которая возвращает максимальный идентификатор, и установите ее самостоятельно в EF
или
Получить всю таблицу в EF ( загрузить его полностью), а затем выбрать максимальный идентификатор.
Я настоятельно рекомендую использовать вариант 2 и 3, а вариант 1 - использовать функцию автоматического увеличения вашей базы данных. Вы должны вставить их через EF с идентификатором null
, и БД установит идентификатор. Вам необходимо соответствующим образом пометить столбец.