有一个代码:
public class Program
{
public static void Main()
{
Person p = new Person{ Name = "Best", LastName="User"};
Person p1 = new Person{ Name = "Best1", LastName="User1"};
SortedList mySL = new SortedList();
mySL.Add("2", p);
mySL.Add("1", p1);
for(int i =0; i < mySL.Count; i++)
{
Console.WriteLine("\t{0}:\t{1}", mySL.GetKey(i), mySL.GetByIndex(i));
}
}
}
public class Person
{
public string Name {get;set;}
public string LastName {get;set;}
}
这将返回:
1: ConsoleApp.Person
2: ConsoleApp.Person
是否可以在排序表中获取属性Name?
从语法来看,您使用的
SortedList是System.Collections. 也就是说,您在上面的某个地方写道:此类将类型
object用作键和值。因此,当接收一个值时,它必须被强制转换(强制转换)为所需的类型,之后您可以访问它的属性:
但是,不推荐使用此命名空间中的类型。
最好使用泛型集合。
在现代 .NET 6 项目中,此命名空间默认打开,您无需手动添加此行。