ServiceStack OrmLite - 是否可以进行分组并引用非分组字段列表?

时间:2017-01-20 16:22:18

标签: servicestack ormlite-servicestack

我可能还在想Linq2Sql模式,但我很难将其翻译成OrmLite。

我有一张顾客表和一张会员卡表。

我想获得一份客户名单,并为每位客户提供一张快递卡清单。

我的策略是选择客户,加入会员卡,按整个客户表分组,然后将卡映射到客户的单个财产列表。

事情没有按惯例命名,所以我不认为我可以利用隐式连接。

提前感谢您的帮助。

以下是我现在没有的代码:

query = query.Join<Customer, LoyaltyCard>((c, lc) => c.CustomerId == lc.CustomerId)
    .GroupBy(x => x).Select((c) => new { c, Cards = ?? What goes here? });
编辑:我想也许这个方法:

var q = db.From<Customer>().Take(1);
q = q.Join<Customer, LoyaltyCard>().Select();
var customer = db.SelectMulti<Customer,LoyaltyCard>(q);

但是这给了我一个关于参数&#34;键的ArgumentNullException。&#34;

1 个答案:

答案 0 :(得分:2)

从说明或您的示例代码中不清楚您的目标是什么,但您可以修复SelectMulti Query

var q = db.From<Customer>()
    .Join<Customer, LoyaltyCard>();

var results = db.SelectMulti<Customer,LoyaltyCard>(q);
foreach (var tuple in results)
{
    Customer customer = tuple.Item1;
    LoyaltyCard custCard = tuple.Item2;
}