在Asp.Net方法中,如何使用EF删除表中的行?

Ala*_*an2 5 c# asp.net entity-framework

我有这个方法:

[Route("Delete")]
public IHttpActionResult Delete()
{

}
Run Code Online (Sandbox Code Playgroud)

我想要做的是从这里的三个表中删除:

public System.Data.Entity.DbSet<SampleSentence> SampleSentences { get; set; } 
public System.Data.Entity.DbSet<Synonym> Synonyms { get; set; } 
public System.Data.Entity.DbSet<WordForm> WordForms { get; set; } 
Run Code Online (Sandbox Code Playgroud)

在EF6中是否有删除功能,我可以用来删除所有行,还是应该以某种方式进行SQL调用?

Nko*_*osi 2

假设您有一个 DbContext 派生类...

using (var transactionScope = new TransactionScope()) {
    try {
        string sql = @"
DELETE SampleSentence 
DELETE Synonym 
DELETE WordForm
";

        int count = myDbContext.Database.ExecuteSqlCommand(sql);
        if(count > 0) 
            transactionScope.Complete();
    } catch(Exception ex) {
        //Logging
    }
}
Run Code Online (Sandbox Code Playgroud)