1
多対多リレーションシップを持つ2つのエンティティがあります。 Company
およびSearchKeyword
。ここで多対多リレーションシップを作成できません
はモデルです:
class SearchKeyword
{
public int ID { get; set; }
public string Text { get; set; }
public virtual ICollection<Company> Companies { get; set; }
}
class Company
{
public int ID { get; set; }
public string Name { get; set; }
public virtual OtherDetail OtherDetails { get; set; }
public virtual ICollection<SearchKeyword> SearchKeywords { get; set; }
}
私は会社にSearchKeywordを追加しようとしていますが、それは私をさせません。私はこれを試みた:
using (var db = new PlaceDBContext())
{
Company c = db.Companies.Single(x => x.ID == 1);
SearchKeyword sk = db.SearchKeywords.Single(x => x.ID == 1);
c.SearchKeywords.Add(sk);
db.SaveChanges();
}
それはObject reference not set to an instance of an object.
私は何がnullであるか分からない。インスペクタでは、c
とsk
の両方に完全な値があります。私は、多対多の関係がEFとどのように機能するかの基本を見逃しているに違いないと思います。
私は間違っていますか?
それを行うことができますおかげで新しいインスタンスを追加する前に、それにリストを割り当てることができますどちらか!それは – Guerrilla
はいです。 Stackoverflowは、そのようなアクションが可能になる前に時間制限を実装します。私はできるだけそのようにします。 – Guerrilla