使用C# 12's new collection expressions,我不能做这样的事情:
if (["blue", "red", "foo"].Any((x) =>
{
...
}))
它给出了一个CS9172编译器错误"没有集合表达式的目标类型".而不是["blue", "red", "foo"]
,我必须做new[] { "blue", "red", "foo" }
--C#12之前的方法,doesn't必须指定类型.
显然,该集合表达式只包含一种类型.编译器无法确定类型是否有技术原因?如果可能的话,这将是使用这一新功能的一种非常简洁和有用的方式.