C# 正确使用跟踪列表?

C# 正确使用跟踪列表?,c#,C#,你好,我一直在寻找最好的方式来装箱一个“二维”的名单。并遇到了以下示例: 但我没有得到我所希望的那种产出。 在代码下面运行我的目标是创建合适的Console.Writeline(曲目列表中的内容),但控制台正在编写的是HelloWorld.track namespace HelloWorld { class Track { public int TrackID { get; set; } public str

你好,我一直在寻找最好的方式来装箱一个“二维”的名单。并遇到了以下示例:

但我没有得到我所希望的那种产出。 在代码下面运行我的目标是创建合适的Console.Writeline(曲目列表中的内容),但控制台正在编写的是HelloWorld.track

namespace HelloWorld
    {
        class Track
        {
            public int TrackID { get; set; }
            public string Name { get; set; }
            public string Artist { get; set; }
            public string Album { get; set; }
            public int PlayCount { get; set; }
            public int SkipCount { get; set; }

          //  List<Track> trackList = new List<Track>();

            public void add()
            {
                var trackList = new List<Track>();
                trackList.Add(new Track
                {
                    TrackID = 1234,
                    Name = "I'm Gonna Be (500 Miles)",
                    Artist = "The Proclaimers",
                    Album = "Finest",
                    PlayCount = 10,
                    SkipCount = 1

                });

                Track firstTrack = trackList[0];
                Console.WriteLine(firstTrack);
                Console.ReadKey();
            }
        }
    }
名称空间HelloWorld
{
班级轨道
{
public int TrackID{get;set;}
公共字符串名称{get;set;}
公共字符串艺术家{get;set;}
公共字符串相册{get;set;}
public int PlayCount{get;set;}
公共int SkipCount{get;set;}
//List trackList=新列表();
公共无效添加()
{
var trackList=新列表();
trackList.Add(新曲目)
{
TrackID=1234,
Name=“我要去(500英里)”,
艺术家=“宣告者”,
Album=“Finest”,
播放次数=10,
SkipCount=1
});
Track firstTrack=轨迹列表[0];
控制台写入线(第一轨道);
Console.ReadKey();
}
}
}
这种情况的术语名称是什么?在谷歌上搜索c#track只会推荐吉他视频

我的目标是正确的Console.Writeline(曲目列表中的内容),但是 控制台正在编写的所有代码都是HelloWorld.Track

这是因为您正在打印对象,而不是它的属性。这可以使用以下代码完成:

Console.WriteLine(String.Format("{0}:{1}:{2}:{3}:{4}:{5}", firstTrack.TrackID, firstTrack.Name, firstTrack.Artist, firstTrack.Album, firstTrack.PlayCount, firstTrack.SkipCount));
有关打印特定对象的所有属性的额外帮助,请尝试以下链接:

有关
Console.WriteLine()
如何工作的更多信息,请参阅:

我的目标是正确的Console.Writeline(曲目列表中的内容),但是 控制台正在编写的所有代码都是HelloWorld.Track

这是因为您正在打印对象,而不是它的属性。这可以使用以下代码完成:

Console.WriteLine(String.Format("{0}:{1}:{2}:{3}:{4}:{5}", firstTrack.TrackID, firstTrack.Name, firstTrack.Artist, firstTrack.Album, firstTrack.PlayCount, firstTrack.SkipCount));
有关打印特定对象的所有属性的额外帮助,请尝试以下链接:

有关
Console.WriteLine()
如何工作的更多信息,请参阅:

我的目标是正确的Console.Writeline(曲目列表中的内容),但是 控制台正在编写的所有代码都是HelloWorld.Track

这是因为您正在打印对象,而不是它的属性。这可以使用以下代码完成:

Console.WriteLine(String.Format("{0}:{1}:{2}:{3}:{4}:{5}", firstTrack.TrackID, firstTrack.Name, firstTrack.Artist, firstTrack.Album, firstTrack.PlayCount, firstTrack.SkipCount));
有关打印特定对象的所有属性的额外帮助,请尝试以下链接:

有关
Console.WriteLine()
如何工作的更多信息,请参阅:

我的目标是正确的Console.Writeline(曲目列表中的内容),但是 控制台正在编写的所有代码都是HelloWorld.Track

这是因为您正在打印对象,而不是它的属性。这可以使用以下代码完成:

Console.WriteLine(String.Format("{0}:{1}:{2}:{3}:{4}:{5}", firstTrack.TrackID, firstTrack.Name, firstTrack.Artist, firstTrack.Album, firstTrack.PlayCount, firstTrack.SkipCount));
有关打印特定对象的所有属性的额外帮助,请尝试以下链接:

有关
Console.WriteLine()
如何工作的更多信息,请参阅:

Console.WriteLine的问题是您正在传入对象实例。它所做的是在对象上调用ToString方法。由于尚未在Track类中重写该方法,因此它将执行默认实现,即输出对象的类型名称。您可以重写ToString方法以返回自己的自定义字符串。请看如何做到这一点。或者,您可以更改调用Console.WriteLine方法的方式,以传入您希望显示的特定消息和对象属性值,而不仅仅是传递对象实例。

Console.WriteLine的问题在于您传递的是对象实例。它所做的是在对象上调用ToString方法。由于尚未在Track类中重写该方法,因此它将执行默认实现,即输出对象的类型名称。您可以重写ToString方法以返回自己的自定义字符串。请看如何做到这一点。或者,您可以更改调用Console.WriteLine方法的方式,以传入您希望显示的特定消息和对象属性值,而不仅仅是传递对象实例。

Console.WriteLine的问题在于您传递的是对象实例。它所做的是在对象上调用ToString方法。由于尚未在Track类中重写该方法,因此它将执行默认实现,即输出对象的类型名称。您可以重写ToString方法以返回自己的自定义字符串。请看如何做到这一点。或者,您可以更改调用Console.WriteLine方法的方式,以传入您希望显示的特定消息和对象属性值,而不仅仅是传递对象实例。

Console.WriteLine的问题在于您传递的是对象实例。它所做的是在对象上调用ToString方法。由于尚未在Track类中重写该方法,因此它将执行默认实现,即输出对象的类型名称。您可以重写ToString方法以返回自己的自定义字符串。请看如何做到这一点。或者,您可以更改调用Console.WriteLine方法的方式,以传入要显示的特定消息和对象属性值,而不是只传递对象实例。

搜索关键字“c#track”与此有何关联?这与列表无关。搜索关键字“c#track”如何甚至与此相关?甚至与列表无关。搜索关键字“c#track”如何与此相关?甚至与列表无关。搜索关键字“c#track”如何与此相关?甚至与列表无关。