ef SqlQuery使用参数查询时提示错误另一个 SqlParameterCollection 中已包含 SqlParameter。

lihaixia993 2016-11-15 10:45:10
StringBuilder sql=new StringBuilder();
List<SqlParameter> sqlParameters1=new List<SqlParameter>();

DbRawSqlQuery<QySkbTouristViewModel> result1 = _dbContext.Database.SqlQuery<QySkbTouristViewModel>(sql.ToString(),sqlParameters1.ToArray());

错误提示

另一个 SqlParameterCollection 中已包含 SqlParameter。

说明: 执行当前 Web 请求期间,出现未经处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.ArgumentException: 另一个 SqlParameterCollection 中已包含 SqlParameter。

源错误:


行 233: DbRawSqlQuery<QySkbTouristViewModel> result1 = _dbContext.Database.SqlQuery<QySkbTouristViewModel>(sql.ToString(),sqlParameters1.ToArray());
行 234: pageCount = result1.Count();
行 235: return result1.Skip((pageIndex - 1) * pageSize).Take(pageSize).ToList();
行 236: }
行 237: #endregion
...全文
194 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
正怒月神 版主 2016-11-15
  • 打赏
  • 举报
回复
你的上一次查询可能还没有 结束,然后你又开始查询其他的了。sqlParameters这个时候是被占用的。 你必须上一次查询tolist之后,才能再使用sqlParameters。我记得看过的文章讲到过这个sqlParameters占用问题,就是这么坑爹。

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧