Если вы пытаетесь использовать тот же оператор вставки, который вы использовали ранее, вы больше не можете это делать.Я не уверен, как это делается на стороне C #, но в SQL вам придется запускать операторы, чтобы включить identity_insert, а затем запускать оператор.Поскольку вы изменили столбец на идентификатор, таблица гарантирует, что следующая запись всегда на 1 номер выше предыдущей.Из-за этого вы не можете просто вставить значения в него.Если вы хотите, чтобы таблица создала для вас значение идентификатора, просто удалите его.Если мое объяснение не поможет, надеюсь, это поможет.
Определение таблицы (Table1) Col1 Identity Col2 varchar (50) Col3 bool
Вставьте оператор перед идентификатором INSERT INTO Table1 VALUES (1, 'Test ', TRUE)
Вставить оператор после идентификатора INSERT INTO Table1 VALUES (' Test ', TRUE)
Когда идентификация включена, вы не можете указать значение, не включив identity_edit.Я посмотрю, смогу ли я найти, как это сделать в Linq.
РЕДАКТИРОВАТЬ: Мне также нравится то, что сказал Даниэль.Не думал об этом.