我知道我可以将一个对象从它自己的类型转换为它的接口类型,如下所示:
IMyInterface myValue = (IMyInterface)MyObjectThatImplementsMyInterface;
Run Code Online (Sandbox Code Playgroud)
我怎样才能投IList<MyClassThatImplementMyInterface>来IList<IMyInterface>?
我昨天回答了同样的问题,虽然对于基类而不是接口.
使这项工作的方法是迭代列表并转换元素.这可以使用ConvertAll完成:
IList<A> listOfA = new List<C>().ConvertAll(x => (A)x);
Run Code Online (Sandbox Code Playgroud)
你也可以使用Linq:
IList<A> listOfA = new List<C>().Cast<A>().ToList();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2313 次 |
| 最近记录: |