NHIBERNATE QUERYOVER

NHIBERNATE QUERYOVER,nhibernate,fluent-nhibernate,queryover,Nhibernate,Fluent Nhibernate,Queryover,嗨 如何对同一个表使用queryover(Join)…示例 if (!string.IsNullOrEmpty(ufResidencia)) { EnderecoProspect endProspectRes =null; TipoEndereco tipoEndProspectRes = null; query .JoinQueryOver<Ender

嗨 如何对同一个表使用queryover(Join)…示例

        if (!string.IsNullOrEmpty(ufResidencia))
        {
            EnderecoProspect endProspectRes =null;
            TipoEndereco tipoEndProspectRes = null;

            query
                .JoinQueryOver<EnderecoProspect>(x => x.Enderecos, () => endProspectRes)
                    .And(() => endProspectRes.Uf == ufResidencia)
                        .JoinQueryOver<TipoEndereco>(x => x.TipoEndereco, () => tipoEndProspectRes)
                            .And(() => tipoEndProspectRes.Descricao != "Fazenda");
        }

        if (!string.IsNullOrEmpty(ufFazenda))
        {
            EnderecoProspect endProspectFaz = null;
            TipoEndereco tipoEndProspectFaz = null;

            query
                .JoinQueryOver<EnderecoProspect>(x => x.Enderecos, () => endProspectFaz)
                    .And(() => endProspectFaz.Uf == ufFazenda)
                        .JoinQueryOver<TipoEndereco>(x => x.TipoEndereco, () => tipoEndProspectFaz)
                            .And(() => tipoEndProspectFaz.Descricao == "Fazenda");

        }
if(!string.IsNullOrEmpty(ufResidentia))
{
EndRecoProspect EndProspects=null;
TipoEndReco tipoEndProspectRes=null;
查询
.JoinQueryOver(x=>x.Enderecos,()=>endProspectRes)
.和(()=>endProspectRes.Uf==ufResidentia)
.JoinQueryOver(x=>x.TipoEndereco,()=>tipoEndProspectRes)
和(()=>tipoEndProspectRes.descripao!=“Fazenda”);
}
如果(!string.IsNullOrEmpty(ufFazenda))
{
EndRecoProspect endProspectFaz=null;
TipoEndereco tipoEndProspectFaz=null;
查询
.JoinQueryOver(x=>x.Enderecos,()=>endProspectFaz)
.和(()=>endProspectFaz.Uf==ufFazenda)
.JoinQueryOver(x=>x.TipoEndereco,()=>tipoEndProspectFaz)
和(()=>tipoEndProspectFaz.descripao==“Fazenda”);
}
当我尝试运行时,会收到路径重复的消息。

尝试使用别名

EnderecoProspect additionalProspect = null;

query
   .JoinQueryOver<EndercoProspect>(x => x.Endercos, () => additionalProspect)...
enderecomprospect additionalProspect=null;
查询
.JoinQueryOver(x=>x.Endercos,()=>additionalProspect)。。。
尝试使用别名

EnderecoProspect additionalProspect = null;

query
   .JoinQueryOver<EndercoProspect>(x => x.Endercos, () => additionalProspect)...
enderecomprospect additionalProspect=null;
查询
.JoinQueryOver(x=>x.Endercos,()=>additionalProspect)。。。