我使用的是實體框架4.1 RC和代碼優先的方法。 如何調用自定義SQL函數?自定義SQL函數和代碼優先(EF 4.1)
如果我使用EdmFunction屬性,我應該指定哪個名稱空間?
[EdmFunction("Namespace", "GetAge")]
public static int GetAge(Person p)
{
throw new NotSupportedException(…);
}
當我嘗試執行與這樣的功能LINQ查詢以下異常被拋出:
指定的方法「...」的類型 「...」不能被翻譯進入LINQ到 實體存儲表達式。
嗯......多麼糟糕的限制。代碼首先比EDMX模型清潔得多,但他們沒有在這兩個模塊中實現這些功能是一種遺憾。他們讓你指定自定義數據庫初始化代碼,所以即使將代碼放在第一個模型的頭腦中,包含它也是有意義的。嘆息... – Ocelot20 2012-06-29 19:22:42
最後,2年後,可以這樣做:您可以使用Code First的EDM。我添加了一個鏈接到一個不完整的TVF和SP映射實現的答案。 – JotaBe 2014-06-11 15:41:37