这是出了什么有关问题

这是出了什么问题
  db_2008Entities db = new db_2008Entities();
            var QueryResults = from n in db.cup
                               select n;
            foreach (var d in QueryResults)
            {
                Console.Write(d.area + " " + d.Price + " " + d.ID + "\t");
            }
            Console.WriteLine("\n============================================");
            using (db_2008DataSetTableAdapters.cupTableAdapter adapter = new db_2008DataSetTableAdapters.cupTableAdapter())
            {
                using (db_2008DataSet.cupDataTable dbSet = new db_2008DataSet.cupDataTable())
                {
                    adapter.Fill(dbSet);
                    Console.WriteLine("Row: {0}", dbSet.Rows.Count);
                    //为啥只有一行数据
                    foreach (DataRow n in dbSet.Rows)
                    {
                        Console.Write(n[1] + " " + n[2] + " " + n[0] + "\r");
                    }
                }
            }
            Console.ReadKey();
        }


这是出了什么有关问题

------解决方案--------------------
问题出在"\r",回车换行是"\r\n","\r"只是回车,也就是说让光标重新回到第一行的开头,并没有换行,所以后面的数据重复打印并覆盖了前面的数据,而且正巧最后一行的数据是最长的。
为什么不用:Environment.NewLine 呢?关于回车换行,每个操作系统都不一样,不建议硬编码。而且一般单独写的话也不是 \r,而是 \n。