gpt4 book ai didi

c# - 将 'System.Collections.Generic.IEnumerable' 转换为 'System.Collections.ObjectModel.Collection'

转载 作者:太空狗 更新时间:2023-10-29 20:59:26 29 4
gpt4 key购买 nike

我有一个集合,我正在尝试使用 Distinct 方法删除重复项。

public static Collection<MediaInfo> imagePlaylist

imagePlaylist = imagePlaylist.Distinct(new API.MediaInfoComparer());

我收到错误“无法将类型‘System.Collections.Generic.IEnumerable’隐式转换为‘System.Collections.ObjectModel.Collection’。存在显式转换(是否缺少强制转换?)”

imagePlaylist 曾经是一个列表(我可以使用 .ToList()),但为了遵守“CA1002 不要公开通用列表”,我想将列表转换为一个集合。

-谢谢

最佳答案

你可以做的是,首先转换 IEnumrable到通用列表,然后使用此列表创建一个新的 Collection使用 Collection 的参数化构造函数类。

public static Collection<MediaInfo> imagePlaylist

imagePlaylist = new Collection<MediaInfo>
(
imagePlaylist
.Distinct(new API.MediaInfoComparer())
.ToList()
);

关于c# - 将 'System.Collections.Generic.IEnumerable<T>' 转换为 'System.Collections.ObjectModel.Collection<T>',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8676382/

29 4 0