После чтения много Similary тем, я не могу решить эту проблему ...Связь находится в «Deleted» состоянии по обновлению
У меня есть следующая модель ...
Persons: Id, Name, City
навыки: Id, описание, person_id
человек может иметь 0 о более навыков, но умение может иметь 1 человек.
Моя форма содержит полей ввода Имя и город, и GridControl связанный с Person.Skills
В этом GridControl у можно удалять, добавлять или редактировать строк.
Проблема заключается в том, когда я удалить строку и сохранить изменения, я получил следующую ошибку:
«Отношения с AssociationSet-х PersonsSkills" находится в „Deleted“ состояние»
Когда я запускаю метод DbContext.Skills.Remove (skill), все работает нормально, но это лучший способ? Я должен сделать это вручную для всех удаленных строк?
Код:
Private DbContext As New Model()
Private person As Person
'Load Person to edit
Private Sub loadPerson()
Dim person As Person = (From p In DbContext.Persons
Where p.Id = IdPerson
Select p).First()
End Sub
NameTextBox.Text = person.Name
CityTextBox.Text = person.City
SkillsBindingSource.DataSource = person.Skills.ToList()
'Update changes
Private Sub save()
person.Name = NameTextBox.Text
person.City = CityTextBox.Text
person.Skills = Ctype(SkillsBindingSource.DataSource, List(Of Skill))
End Sub
DbContext.SaveChanges()
Спасибо за помощь!
PD: Извините за мой английский baaad ...