Это нечетно?
При удалении отношений один ко многим, если связь является необязательной, и вы удаляете родительский объект, остальные останутся сиротами и не будут каскадно удаляться.
var album = new Album
{
Name = "Test Album",
Description = "Test Album Description",
Images = new Collection<Image>
{
new Image {
Name = "Image 1",
Description = "Image 1 Description"
},
new Image {
Name = "Image 2",
Description = "Image 2Description"
},
}
};
albumRepository.Add(album);
albumRepository.UnitOfWork.Commit();
Под объектом изображения я получил AlbumId как Nullable, поскольку некоторые изображения могут быть осиротевшими.
А потом я звоню.
albumRepository.Delete(toRemove);
albumRepository.UnitOfWork.Commit();
Альбом удаляется, но изображения, которые гдепосле того, как они станут сиротами, их AlbumId будет удален из строки.