Lambda表达式中的KeyValuePair

Mur*_*san 5 c# lambda keyvaluepair

我正在尝试使用lambda表达式创建KeyValue对集合.

这是我的班级,下面是我的lambda代码.我没能创建KeyValuePair.

我想获得一部关于Id的KeyValuePair的集合,IsReleased用于 喜剧电影.我将这些KeyValuePair放在HashSet中以便快速搜索.

 public class Movie{
  public string Name{get;set;}
  public int Id{get;set;}
  public bool IsReleased{get;set;}
  //etc
 }

List<Movie> movieCollection=//getting from BL

var movieIdReleased= new 
HashSet<KeyValuePair<int,bool>>(movieCollection.Where(mov=> mov.Type== "comedy")
                                    .Select(new KeyValuePair<int,bool>(????));
Run Code Online (Sandbox Code Playgroud)

rom*_*man 8

你应该将lambda传递给该.Select方法,而不仅仅是表达式:

.Select(movie => new KeyValuePair<int,bool>(movie.Id, movie.IsReleased))
Run Code Online (Sandbox Code Playgroud)

希望有所帮助!