c#Linq - 这是一个删除记录的好设计吗?

Tom*_*len 1 c# linq

/// <summary>
/// Deletes a template data record
/// </summary>
/// <param name="RecordID">ID of the record</param>
public static void DeleteDataRecord(int RecordID)
{
    ArtworkingDataContext dc = new ArtworkingDataContext();

    // Delete associated datalabels
    var q = dc.tblArtworkDataLabels.Where(c => c.dataID == RecordID);
    dc.tblArtworkDataLabels.DeleteAllOnSubmit(q);
    dc.SubmitChanges();

    // Delete the data record        
    var qq = dc.tblArtworkDatas.Where(c => c.ID == RecordID);
    dc.tblArtworkDatas.DeleteAllOnSubmit(qq);
    dc.SubmitChanges();
}
Run Code Online (Sandbox Code Playgroud)

我需要两次调用deleteallonsubmit(),还是只需要一次?

Bro*_*ass 5

更好的方法是将有之间的FK关系ArtworkDatas,并ArtworkDataLabel与级联删除设立在DB -在这种情况下,你就不必删除tblArtworkDataLabels所有,它会自动发生.