мне нужна помощь в написании этого запроса LINQ, вот что я хочу сделать - у меня есть две таблицыУдаление данных после запроса
Message
===
Name
MessageTypeID -> Foreign Key
Date
MessageType
===
ID **(the foreign key)
Name
Мой метод Get API возвращает объект JSON со следующей структурой:
- List<MessageType>
- Name
- List<Message>
Вопрос: Я хотел бы, чтобы список сообщений в объекте messagetype был отфильтрован, чтобы включать только сообщения с датой, которая меньше, чем сегодня.
Мое первое решение состояло в том, чтобы сделать следующее - но это просто возвращает первый объект messagetype много раз.
var mt = from m in db.MessageType
join l in db.Message on m.MessageTypeID equals l.MessageTypeID
where m.SenderID == id && l.Date < DateTime.Now
select m;
return mt.AsEnumerable();
Затем я попытался удалить соединение и удалить данные после запроса, но это вызвало исключение.
var myList = mt.ToList();
foreach (var mtype in myList)
{
foreach (var mess in mtype.LibMessages)
{
if (mess.VisibleEndDate < DateTime.Now)
{
// remove expired message.
mtype.LibMessages.Remove(mess);
}
}
}
«... вызвала исключение». Какое исключение? – abatishchev
Я использую сущность framework 5. – GMan