我正在做一些實驗性的編程,以趕上ASP MVC。MVC 5代碼第一個腳手架與簡單的關係
我爲包含房間的建築物創建了一個項目。一個非常簡單的一對多關係。我試圖讓腳手架工作,從舊的MVC例子看來,這應該只是工作。但是,Rooms中的BuildingId字段未映射到Building模型 - 視圖中沒有選擇列表。
我的車型有:
namespace BuildingManagement.Models
{
public class Building
{
public int Id { get; set; }
[Required]
public string Name { get; set; }
public string Address { get; set; }
public string Street { get; set; }
public string City { get; set; }
public string Province { get; set; }
public string PostalCode { get; set; }
[Display(Name = "Phone")]
[DataType(DataType.PhoneNumber)]
[Required]
public string PhoneMain { get; set; }
[Display(Name = "Contact")]
[Required]
public string ContactName { get; set; }
public string Description { get; set; }
public virtual ICollection<Room> Rooms { get; set; }
}
}
和
namespace BuildingManagement.Models
{
public class Room
{
public int Id { get; set; }
[Required]
public string Name { get; set; }
public string Type { get; set; }
public int BuildingId { get; set; }
}
}
我生成使用實體框架,它創造的形式,但可以欣賞到控制器不與房間編輯視圖預期號樓選擇列表。它改爲顯示一個整數輸入字段。
我錯過了什麼?
我認爲讓我更接近。現在,我得到一個導航屬性錯誤'類型'FacilityManagement.Models.Room'屬性'BuildingId'上的ForeignKeyAttribute無效。在依賴類型'BuildingManagement.Models.Room'上未找到導航屬性「Building」。名稱值應該是一個有效的導航屬性名稱.' – sreimer
有時候不可能將類和名稱命名爲相同的名稱,正如我在此處顯示的那樣。我會編輯答案。 – Mithrandir