У меня была эта модель, которая принимала необязательные параметры для тела почтового запроса:
public class ReportFilterModel
{
public int? ReportStatusId { get; set; }
public Guid? AreaID { get; set; }
}
Это будет выполнять поиск в БД в соответствии с фильтрами, заданными пользователем:
var report = _context.tbl_Reports.AsQueryable();
if (model.ReportStatusId.IsNotNull())
report = report.Where(x => x.IsDeleted == false && x.ReportStatusId == (StatusEnum)model.ReportStatusId.Value);
if (model.Area.IsNotNull())
report = report.Where(x => x.IsDeleted == false && x.Area.Id == model.AreaId);
И затем он наконец возвращал это:
finalReports = await report
.Where(x => x.IsDeleted == false)
.Select(x => new ReportsWithFiltersModel
{
Id = x.Id,
Area = Id,
UserId = x.UserId,
ReportStatus = x.ReportStatusId.GetEnumDescription(),
}).ToListAsync();
Все это работает абсолютно нормально, но теперь я хочу дать список необязательных параметров, например:
public class ReportFilterModel
{
public List<int>? ReportStatusId { get; set; }
public List<Guid>? AreaID { get; set; }
}
Это выдача исключения
'List<int>' does not contain a definition for 'Value' and no accessible extension method 'Value' accepting a first argument of type 'List<int>' could be found (are you missing a using directive or an assembly reference?)
Как это исправить?