Table<TEntity>.DeleteOnSubmit(TEntity) Метод

Определение

Помещает сущность из этой таблицы в pending delete состояние.

public:
 void DeleteOnSubmit(TEntity entity);
public:
 virtual void DeleteOnSubmit(TEntity entity);
public void DeleteOnSubmit(TEntity entity);
member this.DeleteOnSubmit : 'Entity -> unit
abstract member DeleteOnSubmit : 'Entity -> unit
override this.DeleteOnSubmit : 'Entity -> unit
Public Sub DeleteOnSubmit (entity As TEntity)

Параметры

entity
TEntity

Сущность для удаления.

Реализации

Примеры

// Query the database for the rows to be deleted.
var deleteOrderDetails =
    from details in db.OrderDetails
    where details.OrderID == 11000
    select details;

foreach (var detail in deleteOrderDetails)
{
    db.OrderDetails.DeleteOnSubmit(detail);
}

try
{
    db.SubmitChanges();
}
catch (Exception e)
{
    Console.WriteLine(e);
    // Provide for exceptions.
}
' Query the database for the rows to be deleted.
Dim deleteOrderDetails = _
    From details In db.OrderDetails() _
    Where details.OrderID = 11000 _
    Select details

For Each detail As OrderDetail In deleteOrderDetails
    db.OrderDetails.DeleteOnSubmit(detail)
Next

Try
    db.SubmitChanges()
Catch ex As Exception
    Console.WriteLine(ex)
    ' Provide for exceptions
End Try

Комментарии

Удаленная сущность не исчезает из результатов запроса до вызова.SubmitChanges Прежде чем их можно удалить, необходимо сначала подключить отключенные сущности. Дополнительные сведения см. в разделе "Извлечение данных и операции CUD в многоуровневых приложениях (LINQ to SQL).

Note

LINQ to SQL не поддерживает или распознает операции каскадного удаления. Если вы хотите удалить строку в таблице с ограничениями, необходимо задать ON DELETE CASCADE правило в ограничении внешнего ключа в базе данных или использовать собственный код, чтобы сначала удалить дочерние объекты, которые препятствуют удалению родительского объекта. В противном случае создается исключение.

Применяется к