我使用的EntityFramework的代碼第一特徵的,我已經創造了這個領域有自己的屬性模型類(我不一一列舉!):獲取表中的最新記錄
public class Portrait
{
private Guid _id;
private string _aboutimage;
private string _aboutMe;
private string _mainMenu;
private string _headerImage;
private string _resume;
private string _showpiece;
private string _siteMenu;
private string _adminMenu;
}
,併爲該類我有獨立的視圖模型的各個部分,比如我有AboutViewModel
更新管理部分About
和有關頁面在網站導航中:
public class AboutViewModel
{
public Guid Id { get; set; }
public string AboutText { get; set; }
public string Image { get; set; }
}
現在,當我更新AboutViewModel
,Portrait
數據庫中的表將創建一個關於文本的記錄(其他字段將爲空)
並且爲了更新此表的其他部分(如Resume
或其他),它將生成另一個帶更新和插入字段的記錄(現在在此記錄有關文本將是空的!)
現在,我怎麼得到約字段,以顯示它的UI,因爲我有幾個記錄!?我不想,也不能由ID獲取這些字段,因爲我總是希望有他們最新的更新網站顯示,我已經寫了是這樣的,我對動作來獲得關於文字是這樣的:
public ViewResult About()
{
var about= _portraitRepository.GetContent();
return View(about);
}
和GetContent()
是這樣的:
public Portrait GetContent()
{
return _siteContext.Portraits.Find();
}
但不到風度的工作,我得到這個錯誤:
The number of primary key values passed must match number of primary key values defined on the entity. Parameter name: keyValues
我是在一個錯誤的方向?我該如何解決這個問題?
感謝,我沒有與保存ID的任何問題,但在有關行動(公共的ViewResult關於()),我可以我不知道Id,可以嗎? – 2013-02-12 13:27:27
編輯答案,並澄清上述問題。 – 2013-02-12 13:59:13
但它在這種情況下不會返回任何結果! – 2013-02-12 14:43:48