Próbuję nauczyć NHibernate 3.2 built-in mapping by code api
(NIE FluentNhibernate, ani XML). Czy możesz mi pomóc odwzorować relację wiele do wielu między tymi jednostkami?3.2 NHibernate wiele do wielu mapowania za pomocą kodu
public class Post {
public virtual Id { get; set; }
public IList<Tag> Tags { get; set; }
}
public class Tag {
public virtual Id { get; set; }
public IList<Post> Posts { get; set; }
}
Moja pierwotna strategia jest kluczem:
Id(
t => t.Id,
t => {
t.Generator(Generators.HighLow, g => g.Params(new { max_low = 100 }));
t.Column(typeof(TEntity).Name + "Id");
});
i próbuję to:
// TagMap : ClassMapping<Tag>
Bag(t => t.Posts, bag => {
bag.Inverse(true);
bag.Table("TagsPosts");
bag.Cascade(Cascade.DeleteOrphans);
}, t => t.ManyToMany(c => {
c.Column("PostId");
c.Lazy(LazyRelation.Proxy);
}));
// PostMap : ClassMapping<Post>
Bag(t => t.Tags, bag => {
bag.Table("TagsPosts");
bag.Cascade(Cascade.DeleteOrphans);
}, t => t.ManyToMany(c => {
c.Column("TagId");
c.Lazy(LazyRelation.Proxy);
}));
ale to nie działa.
Dzięki. To działa! Odpowiedź Wygłoszono i zaakceptowano: D –
Czy możesz dodać wyjaśnienie, że nie używasz kaskadowania? – Daniel