HasAndBelongsToMany,HasMany与Cascade=ManyRelationCascadeEnum.All

我们在进行多对多操作的时候经常为了少查询一交使用象下面的代码


post.taglist = new ArrayList()

Tag tag = new Tag();
tag.id=6;
post.taglsit.Add(x);
这个时候如果我们用了 ManyRelationCascadeEnum.All 我们会发现 tag的其它 post不见了

原来他认为这个tag就只有一个post哪么我们的其它跟这个tag关联就会没有了。
在实际的数据库环境中。 Post_Tag这个表的条数 趋向于 tag的数量

在这个时候我们必须用 find或者取消ManyRelationCascadeEnum.All

一对多的情况下一般我们不会有这样的写法。如果有的话也是要注意的。一般我们只定
post.ArticleType = xxType这样用new的就没有问题了

你可能感兴趣的:(cascade)