我想返回当前处于给定状态之一的故障单列表。有一个enum TicketState数组(值为Open,InProgress和Finished)。
public IEnumerable<Ticket> ReadTickets(TicketState[] states)
{
return ctx.Tickets.Where(t => states.Contains(t.State)).AsEnumerable();
}
测试方法时出现以下异常:
无法比较'Project.BL.Domain.Ticketing.TicketState []'类型的元素。仅支持基本类型,枚举类型和实体类型。
我试图从数组中创建一个列表并使用一个字节数组,但我一直有例外。
有谁知道如何解决这个问题?
答案 0 :(得分:3)
您在寻找Enumerable.Any吗?
return ctx.Tickets.Where(t => states.Any(s => t.State == s)).AsEnumerable();