Явное преобразование не существует (вам не хватает приведения)

Мой код действительно работал, но теперь он говорит мне, что у меня есть явное преобразование в моей обратной линии.

public IEnumerable<contacts> GetAllContacts()
{
 var Contacts = from c in dbc.Contacts select c;
 return (IEnumerable<contact>)Contacts;
}
</contact></contacts>
1 ответ

Вы неправильно понимаете сообщение об ошибке. Это было (что-то вроде)

Невозможно неявно преобразовать тип System.IEnumerable в System.IEnumerable. Явное преобразование существует (вам не хватает роли?).

Это означает, что вы пытаетесь вернуть IEnumerable когда подпись метода говорит IEnumerable (обратите внимание на s).

Компилятор говорит, что вы можете явно использовать IEnumerable (существует конверсия) - не то, что вы явно конвертируете.

Поэтому вам нужно изменить свой листинг на (IEnumerable<contacts>)Contacts</contacts>, чтобы соответствовать сигнатуре метода и результат вашего запроса LINQ.

licensed under cc by-sa 3.0 with attribution.