0

我有以下数据库表:

文档国家(从未添加到) DocumentLanguage

DocumentLanguage 是 Country 和 Document 之间的链接表,仅包含 ID。实体设计器(正确)添加了这个 aa 导航属性。

我的代码如下:

 public void IdentifyLanguages(List<Country> languages)
    {
        foreach (Country c in languages)
        {
            foreach (var languageIdentifier in c.LanguageIdentifiers)
            {
                if (document.DocumentText.ToLower().Contains(languageIdentifier.LanguageIdentifier1.ToLower()))
                {                      
                   document.Countries.Add(c); 
                    break;
                }

            }
        }
    }

然后保存对象:

context.Document.AddObject(_document);
context.SaveChanges();

我收到以下错误:

EntityKey 属性只能在属性的当前值为 null 时设置。

可能有一个非常明显的解决方案,我尝试过使用附加,使用存根对象,但必须有一个简单的解决方案,因为我确信我不是第一个有这个要求的人!

4

1 回答 1

0

当您使用 AddObject 保存对象时,您的文档是否已经存在于您的数据库中?AddObject 仅用于添加新对象,不更新现有对象

于 2012-05-24T16:01:22.633 回答