Pergunta

I have a simple Entity

public Employee
    {
      public int Id {get; set;}
      public string Name {get; set;}
      public int ManagerId {get; set;}
    }

then I have an LLBLGen Query

var employeeQuery = qf.Create()
            .From(qf.Employee
                .LeftJoin(EmployeeEntity.Relations.EmployeeEntityUsingManagerId))
                .Select(()=> new RptEmployee()
                  {
                     Id = EmployeeFields.Id.ToValue<int>(),
                     EmployeeName = EmployeeFields.Name.ToValue<string>(),
                     ManagerName = HOW?
                  });

How do I get the managername from the self joined query?

Foi útil?

Solução

In this case you must use aliases. Approx code:

var employeeQuery = qf.Create()
    .From(qf.Employee
    .LeftJoin(EmployeeEntity.Relations.EmployeeEntityUsingManagerId, "emp", "man"))
    .Select(() => new RptEmployee()
        {
            Id = EmployeeFields.Id.Source("emp").ToValue<int>(),
            EmployeeName = EmployeeFields.Name.Source("emp").As("EmployeeName").ToValue<string>(),
            ManagerName = EmployeeFields.Name.Source("man").As("ManagerName").ToValue<string>()
        });
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top