【发布时间】:2012-09-18 07:04:00
【问题描述】:
我无法知道 LinqQuery.ToList().Distinct() 和 LinqQuery.Distinct().ToList(); 之间的区别看起来一样。
考虑这个示例代码 :
List<string> stringList = new List<string>();
List<string> str1 = (from item in stringList
select item).ToList().Distinct();
List<string> str2 = (from item in stringList
select item).Distinct().ToList();
str1 显示错误为:“无法将类型 'System.Collections.Generic.IEnumerable' 隐式转换为 'System.Collections.Generic.List'。存在显式转换(您是否缺少演员表?)”
但 str2 没有错误。
请帮助我了解这两者之间的差异。 谢谢
【问题讨论】:
-
"throws" 往往用于描述运行时发生的错误(通常是异常)。而这是一个编译时错误。