C#中linq查询输出的问题

代码如下

foreach (var song in x)
 {
     try
     {
         Console.WriteLine(song);
     }
 }

问题是输出的结果不是想象中的x的各个属性,而是“ConsoleApp1.connecter+song_test”

询问ds得知,writeline函数调用tostring,未重写时默认结果为类名,顺带知道了linq的类名命名规则(


可以看到查阅官方文档后这个是对的(