为什么在C#中这是一个问题?
public Dictionary<string, IEnumerable<object>> GetProducts() {
return new Dictionary<string, IList<object>>();
}
解决方法:
这是不可能的,因为它将创建具有IList< object>的字典.作为价值.
因此,如果您致电:
IEnumerable<object> values = someOtherObjectCollectionPerhapseSomethingFromLinq;
Dictionary<string, IEnumerable<object>> products = GetProducts();
products.Add("MyKey", values);
您返回的字典将接受IEnumerable< object>但下面的字典将不接受它,因为它的值必须为IList< object>类型,在这种情况下,它不是.