具体来说,如果我说:
    public static IEnumerable<String> Data()
    {
        String connectionString = "...";
        using (SqlConnection connection = new SqlConnection(connectionString))
        {
            connection.Open();
            IDataReader reader = new SqlCommand("", connection).ExecuteReader();
            while (reader.Read())
                yield return String.Format("Have a beer {0} {1}!", reader["First_Name"], reader["Last_Name"]);
            connection.Close();
        }
    }
编译器如何从中生成一个具体的可枚举类?