Я пытаюсь использовать SUM
с использованием HQL NHibernate, но при выполнении запроса вызывается исключение A first chance exception of type 'NHibernate.Exceptions.GenericADOException' occurred in NHibernate.dll
, и результат не возвращается. Как я могу это сделать?Как использовать SUM в NHibernate HQL?
попробовав.
public IList<Conta> findAllContasReceber() {
ISession _session = getSession();
IList<Conta> list = _session.CreateQuery("SELECT SUM(c.valorFinal) " +
"FROM Conta c " +
"WHERE (c.tipoConta = 1) AND (c.status = 0) " +
"GROUP BY c.dtVencimento, c.cliente " +
"ÖRDER BY c.dtVencimento ASC "
)
.List<Conta>();
return list;
}
Entity
[Serializable]
public class Conta {
public virtual long id { set; get; }
public virtual Cliente cliente { set; get; }
public virtual String historico { set; get; }
public virtual DateTime dtLancamento { set; get; }
public virtual DateTime dtVencimento { set; get; }
public virtual decimal valorPagar { set; get; } //total vendas
public virtual decimal valorAcrescimo { set; get; } //total acrescimo
public virtual decimal valorFinal { set; get; } //total pagar
public virtual DateTime dtPagamento { set; get; }
public virtual int tipoConta { set; get; } //1 receber, 2 pagar
public virtual PlanoDeConta planoConta { set; get; }
public virtual int status { set; get; } //0 ativa, 1 fechada, 2 cancelada, 3 aguardando pagamento
public virtual Venda venda { set; get; }
public Conta() {
}
}
селектов возвращает список чисел (так как вы выбираете SUM). Но вы говорите, что это список Conta. Измените свой код на 'IList list = _session ...' –
Rob
список чисел, что это значит? Я хочу 'IList'. –
FernandoPaiva
Если вы хотите «Список», почему вы выбираете 'SUM (c.valorFinal)' вместо 'c. *'? –
Rob