当我尝试查看SqlQuery的结果时,出现了奇怪的错误:
var sql = "SELECT @someParam";
var someParamSqlParameter = new SqlParameter("someParam", "Some Value");
var result = _dbContext.SqlQuery<string>(sql, someParamSqlParameter);
var containsAnyElements = result.Any();
当调试器执行到最后一行时,我尝试展开result的结果视图,它显示了期望的result("Some Value")
,但在调用最后一行时,却抛出了异常。
"The SqlParameter is already contained by another SqlParameterCollection.".
似乎当我尝试打开result的结果视图时,它会再次调用此查询。如果这种行为是正确的,请解释一下为什么会发生这种情况。