Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 来自objComm.ExecuteReader的数据读取器_C#_Datareader_Idatareader - Fatal编程技术网

C# 来自objComm.ExecuteReader的数据读取器

C# 来自objComm.ExecuteReader的数据读取器,c#,datareader,idatareader,C#,Datareader,Idatareader,我有以下代码,我想知道是否有人知道正确的处理方法 SqlConnection objConn = new SqlConnection(ConfigurationManager.ConnectionStrings["someConnectionString"].ConnectionString); SqlCommand objComm = new SqlCommand("usp_someStoredProcedure", objConn); objComm.CommandType = Comman

我有以下代码,我想知道是否有人知道正确的处理方法

SqlConnection objConn = new SqlConnection(ConfigurationManager.ConnectionStrings["someConnectionString"].ConnectionString);
SqlCommand objComm = new SqlCommand("usp_someStoredProcedure", objConn);
objComm.CommandType = CommandType.StoredProcedure;
objComm.Parameters.AddWithValue("@Variable1", VOne);
objComm.Parameters.AddWithValue("@Variable2", VTwo);

objConn.Open();
using (IDataReader dr = objComm.ExecuteReader(CommandBehavior.CloseConnection))
{
   //do stuff
}

现在,假设存储过程不返回任何内容,是否有方法处理此问题?

通常,您标记为//do stuff的部分将包含

if (dr.Read())
{
  // do stuff
}
或者

.Read()检查确保仅当它返回数据时才执行操作

while (dr.Read())
    {
        Console.WriteLine(String.Format("{0}", reader[0]));
    }

你可以参考

我已经编辑了你的标题。请参阅“”,其中的共识是“不,他们不应该”。当SP未返回任何数据时,您当前的代码运行良好。“是否有方法处理此问题”:这取决于您希望应用程序如何处理它?
while (dr.Read())
    {
        Console.WriteLine(String.Format("{0}", reader[0]));
    }