相关疑难解决方法(0)

EntityFunctions.TruncateTime和单元测试

我正在使用System.Data.Objects.EntityFunctions.TruncateTime方法在我的查询中获取日期时间的日期部分:

if (searchOptions.Date.HasValue)
    query = query.Where(c => 
        EntityFunctions.TruncateTime(c.Date) == searchOptions.Date);
Run Code Online (Sandbox Code Playgroud)

这个方法(我相信同样适用于其他EntityFunctions方法)不能在LINQ to Entities之外执行.在单元测试中执行此代码(实际上是对象的LINQ)会导致NotSupportedException抛出:

System.NotSupportedException:此函数只能从LINQ to Entities调用.

DbSets在我的测试中使用存根来存储虚假存储库.

那我应该如何对我的查询进行单元测试?

unit-testing entity-framework stub entity-framework-4

29
推荐指数
2
解决办法
2万
查看次数