在Fluent NHibernate中检查是否存在延迟加载的子项而不获取/加载

Jus*_*tin 6 nhibernate proxy lazy-loading parent-child fluent-nhibernate

这应该很容易,但我似乎无法弄明白......如何检查实体上的孩子是否存在而没有实际获取或获取它?这个孩子现在很懒.

所以我有两个实体:

class A
{
    public virtual int Id { get; set; }
    public virtual B Child { get; set; }
}
class B
{
    public virtual int Id { get; set; }
    public virtual byte[] Blob { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我想在A的实例中检查是否存在B而没有实际获取大型博客...在直接sql中我可以检查看看child_id是否为null ...是否有某种方式我可以查询NHibernate代理B在A?

谢谢!

Dan*_*ger 8

NHibernateUtil.IsInitialized(...)将告诉您是否已加载代理对象.


Jus*_*tin 4

nm - 可以只检查空值。只有当子存在时才会有代理。