将List <type>转换为List <typea> </typeb> </types>

时间:2012-11-09 20:34:50

标签: reflection extension-methods servicestack

理解translate的概念。用它将DataModel Type转换为DTO类型,用于表示层,并且工作正常。

objTypeB = objTypeA.TranslateTo<clsTypeB>();

TypeA和TypeB之间的差异只是少数属性的数据类型,我在Property Set方法中对它们进行了转换。

但是在上面的实现中,如果源是List<TypeA>,我会遍历每个来转换为TypeB并添加另一个List<TypeB>实例。是否有可能做这样的事情:

假设resultListAList<clsTypeA>

var resultListB = resultListA.TranslateTo<List<clsTypeB>>();

我尝试过并且似乎没有转换。我得到一个空的resultListB。任何简单的方法吗??

1 个答案:

答案 0 :(得分:4)

这应该这样做:

var resultListB = resultListA.ConvertAll(x => x.TranslateTo<clsTypeB>());