從這個問題:Lambda expression with a void input調用無效參數拉姆達會產生編譯錯誤
我有以下的代碼非常簡單:
int minutes =() => 9;
我得到編譯器錯誤:
Cannot convert lambda expression to type 'int' because it is not a delegate type
我我發現了幾個關於這個錯誤的問題,但他們都是關於更具體的問題。其實我是想給我的拉姆達一個身體,但想我會從簡單的開始首先要檢查我的語法:
//I know this is a weird example
int minutes =()=> { if(x==9) return 9; else return 5;}
'()=> 9'是'Func鍵'或'表達>'不是'int'。 –
Lee
@Lee是對的,這裏是一個小提琴 https://dotnetfiddle.net/K3MoCc –
現在好了,我知道它是'Expression>'一切都很清楚@SalvadorGuerrero謝謝你的擴展...我必須分配我的lambda到一個明確的類型變量?我不能立即調用它,或者分配給一個普通的'var'? –