Code First / MVC 4 / EF 5 の使用
私は場所のオブジェクトを持っています:
public class Place
{
public virtual int PlaceID { get; set; }
public virtual ICollection<Tag> Tags { get; set; }
public virtual DateTime DateAdded { get; set; }
public virtual string Name { get; set; }
public virtual string URL { get; set; }
}
および Tag オブジェクト - それらの間に多対多の関係がある
public class Tag
{
public virtual int TagID { get; set; }
public virtual string Name { get; set; }
public virtual string NamePlural { get; set; }
public virtual ICollection<Place> Places { get; set; }
}
データベースには既にいくつかのタグがあります。たとえば、「パブ」、「ベーカリー」などです。タグを場所に割り当てようとすると、常に「オブジェクト参照がオブジェクトのインスタンスに設定されていません」と表示されます。たとえば、「Bakery」と「Pub」というタグはすでにデータベースにあるので、次のように実行します。
Place myPlace = new Place
{
PlaceID = 1,
Name = "Shoreditch Grind",
URL = "shoreditch-grind-cafe",
};
Tag myTag = db.Tags.Single(t => t.Name == "Bar");
myPlace.Tags.Add(myTag);
作成中のこの新しい場所に既存のタグ「バー」を割り当てたいのですが、「オブジェクト参照がオブジェクトのインスタンスに設定されていません」というエラーが常に発生します。
私はここで本当にばかげたことをしていると確信していますが、それが何であるかを理解することはできません(MVCは初めてです)。ありがとう。