其他分享
首页 > 其他分享> > 字典中的IEnumerable的子类型不可能返回

字典中的IEnumerable的子类型不可能返回

作者:互联网

为什么在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>类型,在这种情况下,它不是.

标签:ilist,dictionary,ienumerable,c
来源: https://codeday.me/bug/20191030/1971748.html