列名不';当使用C#在DataRow中获取结果时,t不属于表

本文关键字:结果 获取 DataRow 不属于 | 更新日期: 2023-09-27 18:00:11

我确信我有确切的列名,但当我尝试使用C#获取它时,会出现一个错误,即"列名"TheoryCourseDate2"不属于表"我有一个从另一个表中获取计数的存储过程,我将计数结果保存在我创建的名为"TheoryCourseDate1"answers"TheoryCurseDate2"的列中

这是我的存储过程:

SELECT COUNT(NULLIF(dt_UserTTrainingDate1,'')) as TheoryCourseDate1 FROM ref_CourseRegistration_Users
SELECT COUNT(NULLIF(dt_UserTTrainingDate2,'')) as TheoryCourseDate2 FROM ref_CourseRegistration_Users

我在DataRow中的代码中得到计数结果,它对列"TheoryCourseDate1"很有效,但对列"theoryCourseDate 2"不起作用,即使列名是正确的。这是C#代码:

SqlParameter[] parm = new SqlParameter[0];
DataRow oRow = SqlHelper.ExecuteRow(this._connString, CommandType.StoredProcedure, SQL_REF_GET_COUNT, parm);
if (oRow != null)
{
    oCourseCount.TheoryCourseDate1Count = Common.CheckStringNull(oRow["TheoryCourseDate1"]);
    oCourseCount.TheoryCourseDate2Count = Common.CheckStringNull(oRow["TheoryCourseDate2"]);
    return oCourseCount;
}

我对此感到困惑,因为我认为我的代码等中没有任何错误,但可能有其他方法可以消除列名错误

列名不';当使用C#在DataRow中获取结果时,t不属于表

您有两个单独的选择,因此结果不在同一行。试试这个:

SELECT COUNT(NULLIF(dt_UserTTrainingDate1,'')) as TheoryCourseDate1,
  COUNT(NULLIF(dt_UserTTrainingDate2,'')) as TheoryCourseDate2 
FROM ref_CourseRegistration_Users