次のデータベース テーブルがあります。
Document Country (決して追加されません) DocumentLanguage
DocumentLanguage は、ID のみを含む Country と Document 間のリンク テーブルです。エンティティ デザイナーは (正しく) この 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 の場合にのみ設定できます。
おそらく非常に明白な解決策があります。私はスタブオブジェクトを使用してアタッチを使用してみましたが、この要件を持った最初の人ではないことを確信しているので、簡単な解決策があるに違いありません!