![](/img/trans.png)
[英]EF6 + Code First + Fluent : Error Cannot insert the value NULL into column 'ID', table 'X' column does not allow nulls
[英]EF - For an already created entity: Cannot insert the value NULL into column 'Id', table 'Languages'; column does not allow nulls
我在嘗試插入新項目但是將其與已創建的(語言)記錄鏈接時收到該錯誤:
var languageRepository = RepositoryFactory.CreateReadOnly<Language>();
_defaultLanguage = languageRepository.FirstOrDefault(l => l.IsDefault);
(...)
newItem.Images = new List<Image>
{
new Image
{
FileName = filename,
Language = _defaultLanguage
}
};
在這種情況下, _defaultLanguage
已經存在於數據庫中,然后我不知道為什么它試圖將其作為新記錄插入而不是僅鏈接到已存在的Id。
_defaultLanguage的內容:
有什么想法可以幫忙嗎?
CreateReadOnly
看起來很可疑。
嘗試將以下內容更改為正常提取。
var languageRepository = RepositoryFactory.CreateReadOnly<Language>();
我相信它是Detach(Untracked)
提取的條目。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.