C# 无法将类隐式转换为ArrayList
我开始学习c#,我遇到了这个错误 无法将动物隐式转换为 System.Collections.ArrayList 这是密码C# 无法将类隐式转换为ArrayList,c#,C#,我开始学习c#,我遇到了这个错误 无法将动物隐式转换为 System.Collections.ArrayList 这是密码 private Animal adoptedPets; public Animal AdoptedPets { get { return adoptedPets;} set {adoptedPets = value;} } 我正在尝试将动物列表设置为对象的此属性。我试图将我的列表按这种方式转换为收养宠物列表,但它不起作用,给了
private Animal adoptedPets;
public Animal AdoptedPets
{
get { return adoptedPets;}
set {adoptedPets = value;}
}
我正在尝试将
动物列表设置为对象的此属性。我试图将我的列表按这种方式转换为收养宠物列表,但它不起作用,给了我上述错误。如果你想让收养宠物成为一个列表,而不仅仅是一个动物,你应该这样声明。最好是宣布它为s
private IList<Animal> adoptedPets;
public IList<Animal> AdoptedPets
{
get { return adoptedPets;}
set {adoptedPets = value;}
}
私人IList收养宠物;
公共宠物
{
获取{返回领养宠物;}
设置{adoptedPets=value;}
}
注意IList
而不是列表
。您还可以使用IEnumerable
。这是一个很好的实践,可以分配任何类型的列表
现在,我假设您希望您的领养宠物
存储动物
的列表。但是你的问题一点也不精确。但是怎么做呢??领养宠物返回1只动物。。。为什么要将其转换为列表?给定的代码不足以重现问题。我认为问题发生在您尝试使用值设置AdoptedPets属性时,而您的代码片段似乎没有任何问题。问题是将动物转换为ArrayList没有任何意义。因此,您需要告诉我们为什么要这样做,以便我们可以帮助您解决潜在的问题。Animal
是如何定义的?还不能投票,没有足够的代表。我还是编辑了这个问题。