다음을 통해 공유


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 작업에서 N 계층 애플리케이션 (LINQ to SQL)합니다.

참고

LINQ to SQL은 계단식 삭제 작업을 지원하거나 인식하지 않습니다. 제약 조건이 있는 테이블의 행을 삭제하려면 데이터베이스의 외래 키 제약 조건에 ON DELETE CASCADE 규칙을 설정하거나 부모 개체를 삭제할 수 없게 하는 자식 개체를 고유한 코드로 먼저 삭제해야 합니다. 그러지 않으면 예외가 throw됩니다.

적용 대상