Vb.net 从DataGridView和实体框架上下文中删除项

Vb.net 从DataGridView和实体框架上下文中删除项,vb.net,entity-framework,Vb.net,Entity Framework,我好像没法让它工作。这在事件处理程序中: Private Sub DeleteItemIcon_Click(ByVal sender As DataGridView, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) If e.RowIndex < 0 OrElse Not e.ColumnIndex = sender.Columns("delete_item").Index Then Return sen

我好像没法让它工作。这在事件处理程序中:

Private Sub DeleteItemIcon_Click(ByVal sender As DataGridView, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs)
    If e.RowIndex < 0 OrElse Not e.ColumnIndex = sender.Columns("delete_item").Index Then Return
    sender.DataSource.RemoveAt(e.RowIndex)
    context.SaveChanges()
End Sub
Private Sub-DeleteItemIcon\单击(ByVal发送者作为DataGridView,ByVal e作为System.Windows.Forms.DataGridViewCellEventArgs)
如果e.RowIndex<0或e.ColumnIndex=sender.Columns(“删除项”).Index,则返回
sender.DataSource.RemoveAt(e.RowIndex)
context.SaveChanges()
端接头
从BindingSource中删除该项不应该将更改传播到我的实体上下文吗?我得到一个例外:

操作失败:无法更改关系,因为一个或多个外键属性不可为null。对关系进行更改时,相关外键属性设置为空值。如果外键不支持空值,则必须定义新的关系,必须为外键属性分配另一个非空值,或者必须删除不相关的对象


差异的可能重复项是
BindingSource
。我可以调用
BindingSource.AddNew()
,新对象将被持久化到数据库中没有问题。为什么不反过来呢?