2010-04-01 45 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