Я пытаюсь отключить каскадное удаление, используя сначала код EF6.
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Conventions.Remove<PluralizingTableNameConvention>();
modelBuilder.Conventions.Remove<OneToManyCascadeDeleteConvention>();
modelBuilder.Conventions.Remove<ManyToManyCascadeDeleteConvention>();
}
Когда я пытаюсь удалить запись в таблице, я получаю сообщение об ошибке
«Невозможно удалить значение первичного ключа, поскольку ссылки на этот ключ все еще существуют. [Имя ограничения внешнего ключа = FK_dbo.OperatorActivity_dbo.Operator_OperatorId]»
Мои модели
public class OperatorActivity
{
public Guid Id { get; set; }
public DateTime StartDate { get; set; }
public DateTime? EndDate { get; set; }
public bool Synched { get; set; }
public virtual Station Station { get; set; }
public Guid StationId { get; set; }
public virtual Operator Operator { get; set; }
public Guid OperatorId { get; set; }
}
public class Operator
{
public Guid Id { get; set; }
public string Name { get; set; }
public string LastName { get; set; }
public string Login { get; set; }
public byte[] Password { get; set; }
public virtual Network Network { get; set; }
public virtual ICollection<Station> Stations { get; set; }
public virtual ICollection<OperatorActivity> Activities { get; set; }
public virtual ICollection<Refill> Refills { get; set; }
public override string ToString()
{
return this.Name + " " + this.LastName;
}
}
Как отключить каскадное удаление?
drop foreign key FK_dbo.OperatorActivity_dbo.Operator_OperatorId
в базе данных - person Ormoz   schedule 03.07.2015