繁体   English   中英

EF6:ObjectContext.ExecuteStoreQuery返回空列表

[英]EF6: ObjectContext.ExecuteStoreQuery returns empty List

我有以下情况:

在数据库中:

  • 存储过程: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对象。 确保成员是“属性而不是字段”。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM