【发布时间】:2011-07-14 16:10:59
【问题描述】:
天色已晚,只见树木不见森林。
我正在尝试使用以下方法选择分层数据:
return
from line in data
group line by line.LieferscheinNr into g
let kpf = g.First()
select new DESSK1
{
K1LINK = MakeDfuePartnerID(kpf.Land, kpf.VerbandNr),
K1LSNR = kpf.LieferscheinNr,
K1LSDT = decimal.Parse(kpf.LieferscheinDatum.ToString("ddMMyyyy")),
K1ILNW = kpf.IlnLieferanschrift,
K1ILNH = kpf.IlnKunde,
K1ILNL = kpf.IlnMandant,
K1CPSD = 1,
K1ILNB = kpf.IlnKunde,
K1VSDT = decimal.Parse(kpf.LieferDatum.ToString("ddMMyyyy")),
K1BSTN = kpf.BestellNr,
// this is where the compiler complains
DESSP2 = from pos in g
select new DESSP2
{
P2LSNR = pos.LieferscheinNr,
P2POSN = pos.Pos,
P2EAN = pos.EAN,
P2LMG = pos.Menge,
P2BMG = pos.MengeSoll
}
};
我想您可以在这里看到我正在尝试的内容,但它失败了,因为 DESSP2 的类型为 System.Data.Link.EntitySet<DESSP2>,而查询的类型为 IEnumerable<DESSP2>。
从IEnumerable<T> 到EntitySet<T> 一定有一种简单的方法,但我看不到。
有什么想法吗?
【问题讨论】:
标签: c# linq linq-to-sql