我的模型類:實體框架,兩個表之間的關係
public class User
{
public User()
{
Polls = new List<Poll>();
}
public int Id { get; set; }
public String FirstName { get; set; }
public String LastName { get; set; }
ICollection<Poll> Polls { get; set; }
}
public class Poll
{
public int Id { get; set; }
public int PositiveCount { get; set; }
public int NegativeCount { get; set; }
public String Description { get; set; }
public User User { get; set; }
}
public class PollsContext : DbContext
{
public DbSet<User> Users { get; set; }
public DbSet<Poll> Polls { get; set; }
}
EF創建了民意調查表的表user_id列。 在輪詢的創建視圖中,我想爲新的輪詢屬性指定UserId,但intellisense顯示沒有對model.UserId的訪問,有一個model.User.Id,它不允許我創建輪詢對於現有用戶,而是使用新ID創建新用戶,並且不創建關聯。
<div class="editor-label">
@Html.LabelFor(model => model.User.Id)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.User.Id)
@Html.ValidationMessageFor(model => model.User.Id)
</div>
那麼爲現有用戶創建新民意調查的正確方法是什麼?
我會嘗試您的建議。我只是感到困惑,因爲User_Id列實際上存在,模型不能訪問它。你知道爲什麼嗎? – mishap
嘗試了你的建議,現在EF創建了User_Id列而沒有任何關聯,而User_Id1作爲FK到Users表。 – mishap
您使用的是什麼版本的EF?先寫代碼或者用edmx映射文件「普通」一個(我不知道那個名字)? – sTodorov