2017-06-14 236 views
0

有沒有辦法在Entity Framework中創建零或一到一或多的關係?我已經看到很多示例顯示0..1到0 .. *的關係,但我想確保在給定示例中Foo只能存在,如果它至少有一個Bar。EF 0..1到1 .. *關係

class Foo 
{ 
    List<Bar> Bars { get; set; } // Must at least have one Bar 
} 

class Bar 
{ 
    public Foo Foo { get; set; } // Foo is nullable 
} 

我看,這是不容易被SQL實現,因爲我想在富表而不是在酒吧桌子一種NOT NULL,但實體框架處理呢?

+0

關係數據庫不能強制這樣的關係。所以EF也無法做到這一點(不支持)。 –

回答

0

糾正我,如果我錯了,但我想你想是這樣的:使用標準約束

modelBuilder.Entity<Foo>() 
    .HasMany(t => t.Bars) 
    .WithOptionalPrincipal(t => t.Foo);