gpt4 book ai didi

c# - EF6 : ObjectContext. ExecuteStoreQuery 返回空列表

转载 作者:太空宇宙 更新时间:2023-11-03 15:48:58 26 4
gpt4 key购买 nike

我有以下情况:

在数据库中:

  • 存储过程:gp_get_location

  • 在我的项目 (EF6) 中,我有一个 DbContext 对象

    public List<Location> GetLocation(int LocationId, int Top = 100)
    {
    var prmLocationID = new SqlParameter("location_id", SqlDbType.Int)
    {
    Value = LocationId
    };

    var prmTop = new SqlParameter("top", SqlDbType.Int)
    {
    Value = Top
    };

    ((IObjectContextAdapter)this).ObjectContext.CommandTimeout = 300;

    var query = ((IObjectContextAdapter)this).ObjectContext.ExecuteStoreQuery<Location>(@"EXECUTE [dbo].[gp_get_location] @location_id, @top", prmLocationID, prmTop);

    return query.ToList();
    }

像这样在管理工作室中执行存储过程:

exec gp_get_location X, 100 -- returns 100 results

exec gp_get_location Y, 100 -- returns 100 results

执行上下文函数:

GetLocation(X, 100) //returns 100 results

GetLocation(Y, 100) //NOT CORRECT - returns 0 results, no exception no warning just 0

这种奇怪行为的原因可能是什么?我怎样才能找到根源?

最佳答案

这是一个非常古老的问题,看起来从未有人回答过。我假设您已修复它,但以防万一,请检查您的 Location 对象。确保成员是属性而不是字段。

关于c# - EF6 : ObjectContext. ExecuteStoreQuery 返回空列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26735106/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com