首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从ILookup中选择元组引发异常

从ILookup中选择元组引发异常
EN

Stack Overflow用户
提问于 2018-10-25 17:01:21
回答 1查看 118关注 0票数 0

我有一个ILookup<Type, (int, string, BitmapSource)>,它应该在下拉列表中存储元素的显示信息(否则只能作为枚举存在于应用程序中)。

元组的访问方式如下:

代码语言:javascript
复制
public IEnumerable<(int, string, BitmapSource)> EnumerationValues(Type type)
{
  return this._enumerationValues
             .Where(group => group.Key == type)
             .Select(group => group.SelectMany<(int, string, BitmapSource),
                                               (int, string, BitmapSource)>(element => element));
}

但是,编译器对此表示不满:

无法将lambda表达式转换为指定的委托类型,因为块中的某些返回类型不能隐式转换为委托返回类型。

甚至编写element => (element.Item1, element.Item2, element.Item3)也会导致同样的错误。我在这里做错了什么,类型完全一样。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-10-25 17:23:09

获取与给定键关联的值的方法是使用索引器。这是专门为返回与该键关联的值序列而设计的操作。尝试在整个集合中搜索匹配的键,首先就不能实现查找的全部目的,因为它是专门为快速搜索给定键而设计的数据结构。

代码语言:javascript
复制
public IEnumerable<(int, string, BitmapSource)> EnumerationValues(Type type) =>
    _enumerationValues[type];
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52994582

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档