У меня есть IQueryable<Journey>
, который я собираю из своей модели сущности. Я хочу использовать это, чтобы получить новый набор IQueryable<Journey>
, но только в течение определенного интервала дат из 2 текстовых полей на моей веб-странице.
A Journey
имеет Journey.DateFrom
и Journey.DateTo
, которые являются строками («ГГГГММДД»).
Я думал, что сделаю что-то вроде этого:
(путешествия IQueryable<Journey>
)
if (tb_DateFrom.Text != ""){
journeys = from j in journeys
where Convert.ToInt32(j.DateTo) >= Convert.ToInt32(tb_DateFrom.Text)
select j;
}
if (tb_DateTo.Text != ""){
journeys = from j in journeys
where Convert.ToInt32(j.DateFrom) <= Convert.ToInt32(tb_DateTo.Text)
select j;
}
Но я получаю сообщение о том, что linq не знает, как это сделать Convert.ToInt32
, равно как и int.parse или datetime.parse. Что работает, так это использование IEnumerable<Journey>
вместо IQueryable<Journey>
, но это настолько медленно, что происходит сбой веб-сайта, поскольку сравниваемые данные довольно велики.
Как я могу решить это, единственный ответ, чтобы получить формат в db для datetime?
Пожалуйста, помогите:)