string commandName = "Pr_Plan_TaskSend_GetTaskTypeCodeFromTaskSendID";
#region Parameters
SqlParameter[] parms = SqlHelperParameterCache.GetCachedParameterSet(ConnectionString.OmsRead, commandName);
if (parms == null)
{
parms = new SqlParameter[] {
new SqlParameter("@TaskSendID", SqlDbType.Int),
new SqlParameter("@TaskTypeCode", SqlDbType.VarChar,10) };
parms[0].Value = TaskSendID;
parms[1].Direction = ParameterDirection.Output;
parms[1].Value = "";
SqlHelperParameterCache.CacheParameterSet(ConnectionString.OmsRead, commandName, parms);
}
#endregion
using (SqlDataReader dataReader = SqlHelper.ExecuteReader(ConnectionString.OmsRead, CommandType.StoredProcedure, commandName, parms)) ///这句报的错
ALTER PROCEDURE [dbo].[Pr_Plan_TaskSend_GetTaskTypeCodeFromTaskSendID]
(@TaskSendID int, @TaskTypeCode VARCHAR(4) output)
#region Parameters
SqlParameter[] parms = SqlHelperParameterCache.GetCachedParameterSet(ConnectionString.OmsRead, commandName);
if (parms == null)
{
parms = new SqlParameter[] {
new SqlParameter("@TaskSendID", SqlDbType.Int),
new SqlParameter("@TaskTypeCode", SqlDbType.VarChar,10) };
parms[0].Value = TaskSendID;
parms[1].Direction = ParameterDirection.Output;
parms[1].Value = "";
SqlHelperParameterCache.CacheParameterSet(ConnectionString.OmsRead, commandName, parms);
}
#endregion
using (SqlDataReader dataReader = SqlHelper.ExecuteReader(ConnectionString.OmsRead, CommandType.StoredProcedure, commandName, parms)) ///这句报的错
ALTER PROCEDURE [dbo].[Pr_Plan_TaskSend_GetTaskTypeCodeFromTaskSendID]
(@TaskSendID int, @TaskTypeCode VARCHAR(4) output)
using (SqlDataReader dataReader = SqlHelper.ExecuteReader(ConnectionString.OmsRead, CommandType.StoredProcedure, commandName, parms))
{
while (dataReader.Read()) //这行没被执行,虽然out变量已经取得正确的值了
{
return dataReader.IsDBNull(0) ? "" : dataReader.GetString(1).ToString(); }
} return null;
或者看看你是不是哪里笔误了写错了
(@TaskSendID int, @TaskTypeCode VARCHAR(4) output)@TaskSend你哪来的这个参数?
return parms[1].Value.ToString(0;
因为是out变量,所以datareader.read=false