Istnieją dwa podmioty takie jak poniżej:Entity Framework: Jak włączyć kaskada usuwać na jedną stronę podmiotami powiązanymi
public class Business
{
public int Id {get; set;}
public File Logo {get; set;}
public int? LogoId {get; set;}
public File Video {get; set;}
public int? Video {get; set;}
public ICollection<File> Images {get; set;}
}
public class File
{
// some file props, such as Id, Name, ...
}
Jak mogę skonfigurować kaskada usuwać pliki w interesach usunąć? Należy pamiętać, że nie potrzebuję żadnej nawigacji od File
do Business
.
UPDATE:
można znaleźć konfigurację ModelBuilder jak ryk:
modelBuilder.Conventions.Remove<OneToManyCascadeDeleteConvention>();
modelBuilder.Entity<Entities.Business>()
.HasOptional(b => b.Logo)
.WithOptionalPrincipal()
.WillCascadeOnDelete();
modelBuilder.Entity<Entities.Business>()
.HasOptional(b => b.Video)
.WithOptionalPrincipal()
.WillCascadeOnDelete();
modelBuilder.Entity<Entities.Business>()
.HasMany(b => b.Images)
.WithOptional()
.WillCascadeOnDelete();
i tu jest błąd Mam:
Introducing FOREIGN KEY constraint 'FK_dbo.Files_dbo.Businesses_Business_Id1' on table 'Files' may cause cycles or multiple cascade paths. Specify ON DELETE NO ACTION or ON UPDATE NO ACTION, or modify other FOREIGN KEY constraints. Could not create constraint
Kod Najpierw? Model pierwszy? Baza danych pierwsza? – Matten
Próbuję kod pierwszy. –