Linq Provider - Querys com superclasses

19 views
Skip to first unread message

Théo Porto

unread,
Oct 16, 2014, 2:08:23 PM10/16/14
to nhiber...@googlegroups.com
Olá Pessoal, tudo bem?

Estou utilizando FluentNhibernate para mapear as classes do meu projeto. Porém ao fazer querys com classes que utilizam herança não estou conseguindo prosseguir. Trabalhei muito tempo com Entity Framework e isso era muito normal por lá.

Segue o modelo de classes e query que estou tentando fazer. Alguém pode me ajudar?

public abstract class Papel
{
    public virtual int Codigo { get; set; }
}

public class Colaborador : Papel
{
    public virtual Empresa Empresa { get; set; }
}

public class PrestadorServico : Papel
{
    public virtual Empresa Empresa { get; set; }
}

public class ControleAcesso
{
    public virtual int Codigo { get; set; } 

    public virtual Papel Papel { get; set; }
}


var controleAcesso
= controleAcesso.Where(ca => (ca.Papel is Colaborador && ((Colaborador)ca.Papel).Empresa.Codigo == empresa)
                                         
|| (ca.Papel is PrestadorServico && ((PrestadorServico)ca.Papel).Empresa.Codigo == empresa)
                                                     
);


Att,

Théo Porto

Reply all
Reply to author
Forward
0 new messages