public ICollection ConsultarPropriedade(Buscador <TObjeto> buscador, TObjeto objeto, LambdaExpression propriedade) { var configuracao = CriarConfiguradorDaChave(buscador.CriarQuery(), objeto); var vinculos = new List <IList <object> >(); var propriedades = new List <PropertyInfo>() { ExpressionHelper.PropriedadeDaExpressao(propriedade) }; CarregarPropriedadeVinculada(TiposRelacionamento.Descendente, configuracao, propriedades, vinculos); return(ConsultarPropriedadeDescendente(objeto, propriedades[0], vinculos.Count == 1 ? vinculos[0] : null)); }
public TEstadoObjeto ConsultarPropriedade <TEstadoObjeto>(Buscador <TObjeto> buscador, TObjeto objeto, Expression <Func <TObjeto, TEstadoObjeto> > propriedade) where TEstadoObjeto : class, IEntidade { var configuracao = CriarConfiguradorDaChave(buscador.CriarQuery(), objeto); var vinculos = new List <IList <object> >(); var propriedades = new List <PropertyInfo>() { ExpressionHelper.PropriedadeDaExpressao(propriedade) }; CarregarPropriedadeVinculada(TiposRelacionamento.Ascendente, configuracao, propriedades, vinculos); return((TEstadoObjeto)ConsularValorPropriedadeAscendente(objeto, propriedades[0], vinculos.Count == 1 ? vinculos[0] : null)); }
public ICollection <TEstadoObjeto> ConsultarPropriedade <TEstadoObjeto>(Buscador <TObjeto> buscador, TObjeto objeto, Expression <Func <TObjeto, ICollection <TEstadoObjeto> > > propriedade) where TEstadoObjeto : class, IEntidade { return((ICollection <TEstadoObjeto>)ConsultarPropriedade(buscador, objeto, (LambdaExpression)propriedade)); }