mad*_*ode 8 nhibernate linq-to-nhibernate nhibernate-3
我需要帮助在NHibernate 3 trunk版本中使用Linq进行急切加载.
我有这样的多对多关系:
public class Post
{
public int Id {get;set;}
public IList<Tag> Tags { get;set;}
.
.
.
}
Run Code Online (Sandbox Code Playgroud)
现在我在Fluent NHibernate中有以下映射
public class PostMap:ClassMap<Post>
{
public PostMap()
{
Table("Posts");
Id(x => x.Id);
.
.
HasManyToMany(x => x.Tags)
.Table("PostsTags")
.ParentKeyColumn("PostId")
.ChildKeyColumn("TagId")
.Not.LazyLoad(); // this is not working..
}
}
Run Code Online (Sandbox Code Playgroud)
现在,在获取帖子时,我还需要标签来加载.我知道有可能使用Criteria API和HQL,而SetFetchMode就是我应该使用的.但是在使用Linq时是否有办法使用SetFetchMode?
Ste*_*ong 13
对此的支持不久前进入后备箱; 语法是这样的
var query = session.Query<Post>().Where(bla bla).Fetch(p => p.Tags);
Run Code Online (Sandbox Code Playgroud)
如果标签又有另一种关系,你可以这样做:
var query = session.Query<Post>().Where(bla bla).Fetch(p => p.Tags).ThenFetch(t => t.SomethingElse);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6854 次 |
| 最近记录: |