2010-04-01 15 views
0

我在閱讀關於調用udf函數的文章http://blogs.msdn.com/alexj/archive/2009/08/07/tip-30-how-to-use-a-custom-store-function.aspx後正在進行測試。當我在objectContext.Entities.Where(t => udf(para1,para2)== 1)中使用函數時,這裏的實體不是ObjectQuery,而是一個ObjectSet,我第一次調用該方法時,它會正確運行,if我重新使用了objectContext,並再次運行它,但使用了不同的para1,para2,那麼之前的參數值仍然被緩存,結果與前一個相同,這是錯誤的。 sql分析器顯示這兩個查詢命中數據庫,但t-sql是相同的。我錯過了什麼嗎?而ObjectSet不支持.where(esql_string)。如何讓udf與ObjectSet一起工作?在實體框架中的UDF調用被緩存

感謝 弗雷德

+0

你看過SQL跟蹤嗎?這很快就會告訴你EF是否做得對。 – 2010-04-01 12:22:41

回答

1

弗雷德,

你描述聽起來EF 4

我會轉發給一些人對EF小組調查很像一個錯誤。

Alex

+0

謝謝。我正在使用vs.net 2010 RC和最新的ef4位 – 2010-04-01 12:59:36