1

我使用 NPoco,我希望查询返回两个结果 - 不是具有两个属性的单个对象,而是某个表的两个总和。我希望将其作为元组检索,但 NPoco 失败了。

我试过这个:

Tuple<decimal, int> res = db.Single<Tuple<decimal, int>>(
                                  "select sum(alpha), sum(beta) from gamma");

但这给了我这个错误:

Exception: Cannot create POCO 'System.Tuple'2[[decimal...][int...]]  It may have no parameterless constructor or be an interface or abstract class without a Mapper factory.

有没有一种方法可以检索多个值而无需为返回对象创建一个类?

4

1 回答 1

0

好的,这里有同样的问题,我反驳了它。Npoco 在元组方面存在问题。

转动那个:

Tuple<decimal, int> res = db.Single<Tuple<decimal, int>>("select sum(alpha), sum(beta) from gamma");

进入那个:

List<(decimal, int)> res = db.Query<dynamic>("select sum(alpha) as col1, sum(beta) as col2 from gamma").Select(x => ((decimal)x.col1, (int)x.col2)).ToList();
于 2021-04-27T10:26:06.637 回答