2016-12-31 66 views
0

我正在使用udemy.I在線的ASP.net MVC5課程。我使用EF遷移爲我的表添加了一個新列。在數據庫中添加的列無法在視圖中檢索

名稱列添加

namespace Vidly.Migrations 
{ 
    using System; 
    using System.Data.Entity.Migrations; 

    public partial class AddNameToMembershipTypes : DbMigration 
    { 
     public override void Up() 
     { 
      AddColumn("dbo.MembershipTypes","Name",c => c.String(nullable:false)); 
     } 

     public override void Down() 
     { 
      DropColumn("dbo.MembershipTypes","Name"); 
     } 
    } 
} 

然後我更新數據庫這種遷移。

確認

enter image description here

客戶和MembershipTypes表截屏有一個一對一的關係,我能夠檢索來自客戶表MembershipTypes領域。

唯一的問題是,我剛剛添加到MembershipTypes的新列「最新名單」,正如我在頂部所描述的,不會從View中檢索到。

以下是視覺確認(雖然我嘗試添加名稱,但有錯誤)

enter image description here

當我用力試圖訪問名稱我得到了以下

enter image description here

我不明白爲什麼我不能訪問名稱字段,因爲我已經添加了我也很重視使用遷移並更新我的數據庫。 我的感覺是,客戶和MembershipTypes之間的聯繫需要以某種方式更新,但我不知道如何?

+1

這可能聽起來很愚蠢,但是您是否將Name屬性添加到了您的MembershipType類中?我問,因爲你已經顯示了你的數據庫表,但不是實體模型(類)。 –

+0

不,我沒有..............這聽起來可能不太愚蠢,因爲我確實很愚蠢...........感謝兄弟。 –

+0

請同時告訴我,自從我剛開始使用EF代碼開始工作以來,當我將該字段添加到我的MembershipType.cs時,我現在如何更新模型? –

回答

2

您在AddNameToMembershipTypes中所做的更改僅用於更新數據庫架構。這不會自動更新您的實體類。你仍然需要添加新的屬性到你的MemberShipType類。

public class MembershipType 
{ 
    public string Name { set;get;} // This one here 

    // Your existing properties here 
    public int DurationInMonths { set;get; } 
} 
相關問題