EF中使用SqlQuery进行参数化查询时抛出异常

EF中使用带参数的SqlQuery进行查询时,抛出"另一个 sqlparametercollection 中已包含 sqlparameter"异常。

这是由于SqlParamerterCollection中同样的参数不能重复添加。即在后续的操作中进行了一次以上的查询。

可以使用db.Database.SqlQuery(sql, param).ToList()的方式避免此异常。这种方式用于分页时不合适,因为所有数据都会都加载到内存了

或者对sql语句使用占位符的语法。如:
slect * from {0} where id={1}

原文地址:https://www.cnblogs.com/goodlucklzq/p/4670747.html