Невозможно преобразовать лямбда-выражение к типу <имяТипа>, поскольку <имяТипа> не является типом делегата
Обновлен: Ноябрь 2007
Lambda expression cannot be converted to '<typename>' because '<typename>' is not a delegate type
Лямбда-выражения могут использоваться в тех случаях, когда делегаты являются допустимыми. Они могут быть преобразованы к совместимым типам делегатов, но не к любым другим типам. Например, можно определить тип делегата и присвоить ему лямбда-выражение или отправить лямбда-выражение в качестве аргумента в Func<TResult> параметр. Эти примеры представлены в следующем коде.
Module Module1
Delegate Function FunDel(ByVal m As Integer) As Boolean
Sub Main()
' Assign a lambda expression to a function delegate.
Dim negative As FunDel = Function(n As Integer) n < 0
Console.WriteLine(negative(-3))
' Send a lambda as the argument to a delegate parameter.
Dim numbers() As Integer = {3, 4, 2, 8, 1, 0, 9, 13, 42}
Dim evens = numbers.Where(Function(n) n Mod 2 = 0)
For Each even In evens
Console.WriteLine(even)
Next
End Sub
End Module
Идентификатор ошибки: BC36625