0

我有一个 .NET 服务(使用 Entity Framework 6.0.0-rc-1)

public class MyController : ApiController
{
    protected DbConnection _connection = new DbConnection();

    public HttpResponseMessage MyProcedure1()
    {
        ...
        var dayPlans = _connection.DayPlans
                          .Where(dp => dp.period >= start && dp.period < end);
        if (dayPlans.Count() > 0)
        {
            //success
        }
        else
        {
            //fail
        }
        ...
    }

    public HttpResponseMessage MyProcedure2()
    {
        ...
        var dayPlans = _connection.DayPlans
                          .Where(dp => dp.period >= start && dp.period < end);
        if (dayPlans.Count() > 0)
        {
            //success
        }
        else
        {
            //fail
        }
        ...
    }
}

客户端同时使用这些程序。事情是有时 dayPlans.Count() 等于零,而它不应该。我已经仔细检查了过滤参数和数据库内容,必须从 db 中选择的记录很少,但它们不是。

另一个重要的时刻是当一种方法中的 LINQ 请求失败时,它总是在另一种方法中失败。但是当这些过程被一个接一个地调用时,它们可能会在所有可能的变体中失败——第一个请求失败,第二个成功;第一次失败第二次失败;等等

可能是什么问题?

4

1 回答 1

0

那是我的错误,日期边界没有正确计算

于 2013-09-20T05:11:05.417 回答