我正在使用带有代码映射的 nHibernate 3.3.1.4。
有 Person 和 Picture 对象,其中 Person 有一个 Picture 成员。图片有一个 Id (int) 和 Image (byte[]) 成员。上传新图片时,我想先删除旧图片如下:
var person = _personRepository.Get(personId);
var picture = partner.Picutre;
_pictureRepository.Delete(picture);
但是,我的映射似乎不正确,因为我收到有关“DELETE 语句与 REFERENCE 约束冲突.....”的错误
这是我的映射:
mapper.Class<Person>(map => map.ManyToOne(x => x.Picture, pic => pic.Cascade(Cascade.DeleteOrphans)));
mapper.Class<Picture>(map => map.Property(x => x.Image, x => x.Type(NHibernateUtil.BinaryBlob)));