gpt4 book ai didi

c# - 如何在使用泛型时指定匿名类型的类型

转载 作者:行者123 更新时间:2023-11-30 12:12:06 24 4
gpt4 key购买 nike

标题有点乱。我将尝试用一个例子来解释。考虑以下代码:

String[] str={"Apple","Banana","Cherry","Orange"};
var anoCollection=from e in str select new
{
ch=e[0],
length=e.Length
}
dataGridView.DataSource=anoCollection.ToList(); //TypeInitializationException

我觉得我需要为 ToList<T>() 提及上述案例中的类型方法。但是我怎么能在这里提到匿名类型呢?

最佳答案

永远不可能直接提及匿名类型,但您不需要这样做。通用类型推断意味着您不需要指定 <T>.ToList<T>() - 编译器将自动注入(inject)发明的类型。

只有几种方法可以引用匿名类型:

  • 通过someObj.GetType() , 其中someObj是匿名类型的实例
  • 通过泛型,作为 T ,通过泛型类型推断调用泛型方法(如 ToList() )
  • 反射的各种其他用法,拉入 T通过GetGenericTypeParameters()

关于c# - 如何在使用泛型时指定匿名类型的类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14139744/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com