MVC4 プロジェクトに次の POCO があります。
public class Gallery : ModelBase
{
public string Name { get; set; }
public string Description { get; set; }
public bool IsPublic { get; set; }
public string ThumbnailPath { get; set; }
[ForeignKey("Id")]
public ICollection<GalleryImage> Images { get; set; }
}
新しいギャラリー エンティティを作成すると、画像コレクションは null になります。初期化されていないリストに新しいイメージ (私の場合) を追加するにはどうすればよいですか? 追加するための私のコードは次のようになります。
Guid gGallery = Guid.Parse(Request.Form.GetValues("galleryId")[0]);
Gallery gallery = db.Galleries.Where(g => g.Id == gGallery).Include(g => g.Images).First();
galleryimage.Id = Guid.NewGuid();
galleryimage.CreatedByUserId = WebSecurity.CurrentUserId;
galleryimage.InsertDate = DateTime.Now;
galleryimage.LastModDate = DateTime.Now;
db.GalleryImages.Add(galleryimage);
if (gallery.Images == null)
gallery.Images = new List<GalleryImage>();
gallery.Images.Add(galleryimage);
db.SaveChanges();
コードは実行時に次の例外で壊れます (ドイツ語のみで申し訳ありません)。
Ein Objekt vom Typ 'System.Collections.Generic.List`1[[gallery.Models.GalleryImage, gallery, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]]' kann für eine EntityReference vom Typ 'gallery.Models .GalleryImage' nicht als Value-Eigenschaft festgelegt または daraus entfernt werden.
初期化されていないコレクションに新しいアイテムを追加するにはどうすればよいですか?