Посмотрите на следующий фрагмент вашего кода:
FormSection fs = new FormSection();
foreach (Question q in selectedSectionQuestion.Questions)
{
fs.FormID = currentForm.FormID;
fs.SectionID = selectedSectionQuestion.SectionID;
fs.QuestionID = q.QuestionID;
context.FormSections.Remove(fs);
}
Вы создаете новый экземпляр FormSection
, а затем пытаетесь удалить его несколько раз. Entities
/ EntitySet
не работает таким образом: контекст отслеживает, какие объекты вы извлекли из базы данных . Это означает, что если вы попытаетесь удалить сущность, которая не является экземпляром сущности, полученной из базы данных, она неизвестна для контекста .
У вас должен быть список запрашиваемых FormSections
в вашей модели представления, вы должны удалить экземпляры FormSection
, которые приходят из этого списка, чтобы они были известны контексту.