Ошибка компилятора CS1731
Обновлен: Ноябрь 2007
Сообщение об ошибке
Невозможно преобразовать выражение 'expression' в делегат, потому что некоторые из типов возвращаемых значений в этом блоке не позволяют выполнить неявное преобразование в тип возвращаемого делегатом значения.
Cannot convert 'expression' to delegate because some of the return types in the block are not implicitly convertible to the delegate return type.
Эта ошибка генерируется в том случае, если лямбда-выражение или анонимный метод имеет тип возвращаемого значения, несовместимый с типом возвращаемого значения делегата.
Исправление ошибки
- Измените тип возвращаемого значения делегата или выражения.
Пример
Следующий код вызывает ошибку CS1731:
class CS1731
{
delegate double D();
D d = () => { return "Who knows the real sword of Gryffindor?"; };
}