如何使用Linq语句初始化ObservableCollection

来源:互联网 发布:星空卫视网络直播源 编辑:程序博客网 时间:2024/06/05 02:36

第一种方法可以直接使用linq的查询结果做为ObservableCollection构造函数的参数,

ObservableCollection<Assignment> Assignments = new ObservableCollection<Assignment>(                from a in App.LocalDataBase.Assignments                where a.CourseName == ApplicationTitle && a.StartDate == date                select a                );


第二种方式定义一个扩展方法因为 linq查询的结果是返回一个集合类型IQueryable<T>,它实现了IEnumable<T>接口.所以这个扩展方法可以这样写

static public void ForEach<T>(this IEnumerable<T> collection, Action<T> action)         {             foreach (var item in collection)             {                 action(item);             }         }

用的时候这样

(from a in App.LocalDataBase.Assignments          where a.CourseName == ApplicationTitle && a.StartDate == date          select a).ForEach(Assignments.Add);


 


 

原创粉丝点击