我的Linq查询中的所有内容都正常工作,但我尝试使用数据填充子集合的区域除外。 (任何引用ChannelInfo的东西)。
ChannelInfo确实出现在Intellisense中,因此它被识别为新OfferType的属性。我也可以在智能感知器中识别和访问我对ChannelInfo的setter的右侧。如果可能的话,我真的需要创建新的OfferType对象。我可以通过这种方式引用子连接(ChannelInfo),以便我可以使这个查询起作用吗?
IEnumerable<OfferType> list = (from offerCatType in offerRes.OfferCategory <=---- OfferCategoryType objects
where offerCatType.type == Type
from offers in offerCatType.Offer <=--- OfferType objects
where Convert.ToDateTime(offers.startDate) > MonthYear && Convert.ToDateTime(offers.endDate) < MonthYear
select new OfferType
{
name = offers.name,
description = offers.description,
startDate = offers.startDate,
endDate = offers.endDate,
ChannelInfo.refClickThroughLink = offers.ChannelInfo.refClickThroughLink,
ChannelInfo.refId = offers.ChannelInfo.refId,
ChannelInfo.refLink = offers.ChannelInfo.refLink
}
);
答案 0 :(得分:0)
select new OfferType
{
name = offers.name,
description = offers.description,
startDate = offers.startDate,
endDate = offers.endDate,
ChannelInfo =
new ChannelInfo
{
refClickThroughLink = offers.ChannelInfo.refClickThroughLink,
refId = offers.ChannelInfo.refId,
refLink = offers.ChannelInfo.refLink
};
}
请原谅语法。但是,您必须new
升级ChannelInfo
。