![]() |
1
5
因为,通过Reflector查看代码时,Cast不会尝试将任何隐式的Cast运算符(Linq Cast代码针对各种特殊情况进行了大量优化,但没有考虑到这一方向)考虑在内(因为许多.NET语言不会这样做)。 在没有考虑到思考和其他事情的情况下,泛型没有提供任何现成的方法来在任何情况下考虑这些额外的东西。 编辑:一般来说,更复杂的设施,如隐式/显式、相等运算符等,一般不由像LINQ这样的通用设施处理。 |
![]() |
2
2
如果需要,还可以使用此功能进行转换的铸造:
http://adventuresdotnet.blogspot.com/2010/06/better-more-type-safe-alternative-to.html |
![]() |
3
1
|
![]() |
4
0
List items = new List{new Class2{Test2 = 9}}; foreach (Class1 item in (from x in items select (Class1)x)) { Console.WriteLine(item.Test1); } |
![]() |
Jiji · 将简单对象强制转换为简单的通用接口 6 年前 |
![]() |
tobeypeters · 反射铸造 6 年前 |
![]() |
Alex · 是否改为存储字符串的整数的通用ArrayList? 6 年前 |
![]() |
Kai · 如何在C#中转换会话中存储的词典? 6 年前 |
![]() |
Ján ЯabÄan · 布尔值到双精度的快速转换方法 6 年前 |