【发布时间】:2014-02-10 12:09:44
【问题描述】:
我有一个自定义数据类型的列表,简化示例 (myMovies):
public class Movie
{
public Int32 TVIndex;
public string MovieName;
public string MovieRating;
public string MovieRuntime;
public List<Actor> MovieActors;
public List<MovieArt> MovieImages;
}
public class Actor
{
public string ActorName;
public string ActorRole;
}
public class MovieArt
{
public string ImagePath;
}
List<Movie> myMovies = new List<Movie>();
现在我正在尝试从myMovies 中删除所有重复项,但忽略TVIndex。
我试过看
List<Movie> myDistinctMovies = myMovies.Distinct().ToList();
但无法弄清楚如何忽略TvIndex。这可能吗?
【问题讨论】:
-
您可以覆盖 Movie 数据类型的 Equals 和 GetHashCode。
-
@Grundy/peer..Example 会很棒..
-
也可以看MoreLINQ
DistinctBy方法 -
正在处理它......唯一的麻烦是在真实代码中
Movie有 50 个字段,Actor有 15 个字段,MovieArt有 5 个字段。这需要一段时间!!跨度>