В случае, если вы используете UnitOfWork, вы можете выполнить sql с ExecuteSqlCommandAsync
public async Task<int> ExecuteCommandAsync(string sqlCommand, params object[] parameters)
{
return await this.DataContext.Database.ExecuteSqlCommandAsync(sqlCommand, parameters);
}
или если вы используете контекст напрямую
using(var context = new SampleContext())
{
var commandText = "Delete from MyTable where Id=@id";
var name = new SqlParameter(@id", 1);
context.Database.ExecuteSqlCommand(commandText, name);
context.SaveChanges();
}
пример
Использование Fluent API для настройки сущностей на отключение каскадного удаления с помощью WillCascadeOnDelete()
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Student>()
.HasOptional<Standard>(s => s.Standard)
.WithMany()
.WillCascadeOnDelete(false);
}