Tag: yield return的

使用中的产量回报

如果我没记错的话,当我在using SqlConnection块时使用yield时,我得到了运行时exception。 using (var connection = new SqlConnection(connectionString)) { var command = new SqlCommand(queryString, connection); connection.Open(); SqlDataReader reader = command.ExecuteReader(); // Call Read before accessing data. while (reader.Read()) { yield reader[0]; } // Call Close when done reading. reader.Close(); } 当我用List替换yield时,我解决了这些问题,我在每次迭代中都添加了项目。 在内部using StreamReader块时,我还没有发生同样的问题 using (var streamReader = new StreamReader(fileName)) { string line; while ((line = […]