带有ParameterName的SqlParameter不包含在此SqlParameterCollection中

本文关键字:SqlParameterCollection 包含 ParameterName SqlParameter 带有 | 更新日期: 2023-09-27 18:12:45

不知道为什么我总是收到

不包含带有ParameterName的SqlParameterSqlParameterCollection

当我在其他方法中像这样拉动和调用进程时

该过程在该大小写中确实有一个参数@EqId。

List<string> equipTypes = new List<string>();
Database db = DatabaseFactory.CreateDatabase("OurDBName");
DbCommand cmd = db.GetStoredProcCommand("Get_EquipTypes_By_ID");
db.DiscoverParameters(cmd);
cmd.Parameters["@EqId"].Value = equipID;
using (IDataReader objReader = db.ExecuteReader(cmd))
{
   while (objReader.Read())
      equipTypes.Add(DataUtility.GetStringFromReader(objReader, "Data"));
}

带有ParameterName的SqlParameter不包含在此SqlParameterCollection中

是否像这样添加参数

 cmd.Parameters.AddWithValue("@EqId", equipID);

我认为这是最干净的方式,好吧,有点:)

首先,当您知道参数时,我不会发现参数。由于您正在执行此操作,因此请检查参数集合并确保发现了参数。在你弄清楚这一点之后,我的目标是更像Greg建议的那样。

相关文章:
  • 没有找到相关文章