【发布时间】:2016-05-19 18:49:24
【问题描述】:
我有一个类型 Bar,它定义了一个隐式转换运算符:
public static implicit operator Bar(Foo foo)
{
return new Bar(foo.property);
}
转换单个对象效果很好,但现在我有一个List<Foo>,我需要一个List<Bar>。
我找到了这个解决方法:
List<Bar> barList = fooList.ConvertAll<Bar>(item => item);
似乎可以解决问题,但如果我必须在这种有点明确的意义上应用它,它就有点违背了隐式转换运算符的意义。有什么方法可以使隐式转换对列表起作用?
【问题讨论】:
-
您没有显示使用列表的代码,这可能会改变采用的方法。例如。如果您通过 foreach 使用它,则无需转换列表:dotnetfiddle.net/p3b8Bb
-
@AndyJ 我将这些列表作为一个整体传递。
标签: c# list type-conversion