это мой класс сообщений:не реализует IEnumerable
public class SMessage
{
public int AccountId { get; set; }
public int MessageId { get; set; }
public string str{ get; set; }
public string Subject { get; set; }
public int sendByAccountId { get; set; }
[ForeignKey("sendByAccountId")]
public virtual AccountModels account { get; set; }
}
это мой DTO класс:
public class MessageInformation
{
public string Subject { get; set; }
public string str { get; set; }
}
и это мой метод в хранилище:
public List<MessageInformation> GetAllMessagesForUser(int accountId)
{
MessageInformation messages
using (SishanContext Context = new SishanContext())
{
messages = (from m in Context.SMessages.ToList()
where m.AccountId == accountId
select new MessageInformation
{
m.Subject,
m.str
}).ToList();
}
return messages;
}
но , У меня есть ошибка:
Cannot initialize type 'sishan.Models.MessageInformation' with a collection initializer because it does not implement 'System.Collections.IEnumerable'
Почему вы называете .ToList дважды ? Возможно, вы захотите профилировать свой запрос, чтобы увидеть, что фильтр применяется на клиенте, а не в базе данных (предложение Where не передается в базу данных). –