2
我在我的数据库中有三张表:图像,图像标签,标签。图像和标签通过ImagesTags表格具有多对多的关系。 图片实体:NHibernate不更新多对多连接表
public class Image
{
public virtual int Id { get; set; }
public virtual string Name { get; set; }
public virtual IList<Tag> Tags { get; set; }
}
标签实体:
public class Tag
{
public virtual int Id { get; set; }
public virtual string Name { get; set; }
}
图片地图:
public ImageMap()
{
Table("Images");
Id(x => x.Id).GeneratedBy.Identity();
Map(m => m.Name).Length(100).Not.Nullable();
HasManyToMany(f => f.Tags).Table("ImageTags")
.LazyLoad().Inverse().Cascade.SaveUpdate();
}
标签地图:
public TagMap()
{
Table("Tags");
Id(x => x.Id).GeneratedBy.Identity();
Map(m => m.Name).Length(100).Not.Nullable();
}
当我尝试更新的形象,加入表格ImagesTag d没有更新,但其他图像属性(名称)更新。
public void Update (Image image)
{
session.SaveOrUpdate(image);
session.Flush();
}
寻找一些帮助,如何更新连接表。
谢谢,它按预期工作。 – user3450929 2014-12-06 10:36:58
很高兴见到先生;)享受惊人的NHiberante;) – 2014-12-06 10:37:30