2016-08-01 49 views
4

我試圖找出爲什麼下面一行:F#報價生成非常奇怪的編譯錯誤

let emailQuotation: Expr<LoginView -> string> = <@ fun (v: LoginView) -> v.Email.Text @> 

與編譯錯誤而失敗,說:「對不確定對象的類型查找...」。財產ViewModel.Email是Xamarin表格Entry,其中包含Text財產。

編譯器需要什麼更多的信息,爲什麼它無法解釋這個表達式?

回答

1

我的解決方案很難看。我可以這樣做:

let emailQuotation = <@ fun (v: LoginView) -> let email: Entry = v.Email in email.Text @> 

的報價是無法解釋的v.Email類型。我不是代碼引用方面的專家,因此可能有一種方法可以讓編譯器在單個表達式中選擇類型。

+0

這項工作? '有趣(v:LoginView) - >(v.Email:Entry).Text' –

+0

我會盡力的。如果確實有效,請隨時提交答案,我會加註並將其標記爲答案。 –

+0

它很好用。如果您將此作爲答案提交,我會對其進行相應標記。 –