2015-10-26 28 views
1

問題實體框架7個從關鍵,集合,錯誤參考定義缺少ASP.NET測試版8

我有我的β7的應用程序升級到beta8麻煩。我有超過50個錯誤的問題,但現在已經把它放在了EF7上。這是由堆棧溢出的朋友和用戶推薦的,我特​​別提出了這個問題。

實體框架錯誤

錯誤CS1061「EntityTypeBuilder <單元>」不包含關於「集合」的定義和沒有擴展方法「集」接受型的第一參數「EntityTypeBuilder <單元> '可以找到(是否缺少using指令或程序集引用?)SampleProject.DNX 4.5.1

我得到同樣的錯誤Reference爲好。

我在我的DbContext.cs文件的OnModelCreating(ModelBuilder builder)方法中有以下代碼。

builder.Entity<Unit>(entity => 
{ 
    entity.HasKey(unit => unit.UnitId); 
    entity.Collection(unit => unit.UnitBins).InverseReference(bin => bin.BinUnit) 
        .ForeignKey(bin => bin.UnitId).Required(true); 
    entity.Reference(u => u.RefUnitType).InverseReference().ForeignKey<Unit>  (u => u.RefUnitTypeId).Required(); 
      }); 

的問題是,EntityBuilder似乎並不具有定義爲CollectionReference。這大概是第二次或第三次這種類型的邏輯在EF中被重構了,所以我很困惑如何重寫我的邏輯。

嘗試:

我嘗試了以下幾件事:

  • 我試着在VS15使用智能感知,但沒有類似的發現
  • 我已經搜查了EF7發出GitHub的頁面,但沒什麼都看不到
  • 我也試過dnu restore只是爲了確保升級沒有做一些奇怪的事情,我的project.json鎖。
  • 使用entity.HasKey()而不是entity.Key(),但還沒有找到與其他方法相媲美的其他方法?

既然beta8功能齊全,我可能會重寫我的項目的重要部分。但是,現在我需要解決這些錯誤,以便我可以再次編譯該項目。任何幫助,援助和建議,將不勝感激。

回答

3
Collection => HasMany 
Reference => HasOne 
InverseReference => WithOne 
+0

如果你可以先生,你能告訴我你是如何學習這些重構術語的?我希望更多地瞭解正在發生的變化。 :) – hlyates

+1

項目源代碼和測試代碼是一個很好的來源 – ErikEJ

+0

訂閱[公告](https://github.com/aspnet/Announcements)回購。 EF7團隊發佈了突破性的改變。 –