扩展结果视图将枚举IEnumerable

时间:2018-05-24 11:56:57

标签: c# visual-studio ienumerable visual-studio-debugging

我希望有人帮忙。 我想执行MS SQL(SELECT语句)。数据源连接建立,所有在下面的源代码下运行没有错误。但是,在reader对象中,Result视图为空。此错误消息是:扩展结果视图将枚举IEnumerabl。注意SELECT命令。我在SQL管理器应用程序上单独运行它并得到一个结果,语法是一个很好的SQL命令。我做错了什么?

// **********************  SQL Connect building   ****************************
SqlConnection myMSSQLConn;
SqlCommand SQL_command = new SqlCommand(); 
SqlDataReader reader;

try //MS SQL connect building
{
    myMSSQLConn = new SqlConnection(AccInstance.SQL_myConnection_string);
}
catch (Exception ex)
{
    AccInstance._MasterErrorText = "Connect error" + ex;
    AccInstance.Messages("39", "");
    return 0;
}

// "SELECT TOP 1 CITYS.V_NUM FROM dbo.CITYS ORDER BY CITYS.V_NUM DESC"
SQL_command.CommandText = MSSQLOperation_command; 
SQL_command.CommandType = CommandType.Text;
SQL_command.Connection = myMSSQLConn;
myMSSQLConn.Open();
reader = SQL_command.ExecuteReader();

while (reader.Read())
{
    MessageBox.Show(reader.GetValue(0)
               + " - " + reader.GetValue(1)
               + " - " + reader.GetValue(2));
}
reader.Close();
SQL_command.Dispose();
myMSSQLConn.Close();

enter image description here

2 个答案:

答案 0 :(得分:2)

这与Visual Studio调试有关。您正在尝试打开IEnumerable类型,它可以具有各种内部实现。要运行该集合,您必须按左侧的> 符号。它将为您弹出枚举。但它也可以在其后面隐藏不必要的代码。

在财产扩展之前,它不会被展示。这不是ListDictionary类型,您可以访问其中的任何项目。首先必须枚举才能正确显示IEnumerable

答案 1 :(得分:0)

您可以使用快速手表。选择用于生成IEnumerable输出的表达式,然后右键单击->快速监视。