Omu*_*Omu 2 .net c# .net-4.0 .net-3.5
public class Entity
{
public int Id {get;set;}
}
public class Foo : Entity
{
public string Name {get;set;}
}
//foos is an IEnumerable<Foo> with List<Foo> value
foos as IEnumerable<Entity> //works in .net 4.0, doesn't work in 3.5,
Run Code Online (Sandbox Code Playgroud)
如何在3.5中获得类似的行为
该结构依赖于.net 4.0中引入的协方差/逆变.您将无法在早期版本上使用此功能.
这是一篇很好的文章:http://blogs.msdn.com/b/csharpfaq/archive/2010/02/16/covariance-and-contravariance-faq.aspx
| 归档时间: |
|
| 查看次数: |
216 次 |
| 最近记录: |