我如何检索Linq中的不同列表?
问题描述:
我希望我的结果是这样我如何检索Linq中的不同列表?
McLaren Cup
The Regis Brunch
21st Jan 2017
24st Jan 2017
26st Jan 2017
General Entry
General Parking
Picnic Parking
21st Jan 2017
24st Jan 2017
26st Jan 2017
为此,我做了LINQ查询,但我得到的例外如下 附加信息:“独特”操作无法应用于指定参数的采集与resultType。
var Ticketdata = (from Tevent in context.TicketEventsMaster
where Tevent.IsActive == true && Tevent.IsVisible == true
select new
{
EventID = Tevent.TicketEventID,
eventName = Tevent.TicketEventName,
EventCategories = (from TEM in context.TicketCategoriesMaster
join TED in context.TicketEventDates on TEM.CategoryID equals TED.TCategoryID
where TED.IsActive == true && TED.IsVisible == true && TED.TEventID == Tevent.TicketEventID
//orderby TED.DisplayOrder
select new
{
CategoryID = TED.TCategoryID,
CategoryName = TEM.CategoryName,
EventDates = (from tDate in context.TicketEventDates
where
tDate.IsActive == true && tDate.IsVisible == true
&& tDate.TEventID == Tevent.TicketEventID
&& tDate.TCategoryID == TEM.CategoryID
orderby tDate.TEventDate
select new
{
DateID = TED.ID,
Dates = TED.TEventDate != null ? TED.TEventDate.ToString() : string.Empty,
Times = TED.TEventTime != null ? TED.TEventTime.ToString() : string.Empty,
}).ToList()
}).Distinct().ToList()
}).ToList();
答
有很多方法可以获得不同的数据。 你可以使用“DistinctBy”与deisred属性,或者您可以使用
var result = table.GroupBy(test => test.id)
.Select(grp => grp.First())
.ToList();