代码优化,实现集合的遍历,获取满足条件的数据
var list = new List<MyTask>(){
new MyTask(){ TID=1,TaskName="第一季广船国家有限公司 日常巡查任务", WillFinishDate=new DateTime(), RemainderDays=1, OverdueDays=1, Status="已完成",StatusID=1,Warn=1,Members="张三",UserID=1,FinishedDate=new DateTime() },
new MyTask(){ TID=2,TaskName="第二季广船国家有限公司 日常巡查任务", WillFinishDate=new DateTime(), RemainderDays=1, OverdueDays=1, Status="已完成",StatusID=1,Warn=1,Members="李四",UserID=1,FinishedDate=new DateTime() },
new MyTask(){ TID=3,TaskName="第三季广船国家有限公司 日常巡查任务", WillFinishDate=new DateTime(), RemainderDays=1, OverdueDays=1, Status="未完成",StatusID=1,Warn=1,Members="王五",UserID=1,FinishedDate=new DateTime() },
new MyTask(){ TID=4,TaskName="第四季广船国家有限公司 日常巡查任务", WillFinishDate=new DateTime(), RemainderDays=1, OverdueDays=1, Status="未完成",StatusID=1,Warn=1,Members="赵六",UserID=1,FinishedDate=new DateTime() }
};
获取Status等于”已完成”的数据的集合。
方法1:
//this.MyTaskList = GetValue(list,tag);
// private IList<MyTask> GetValue(List<MyTask> list,string tag)
// {
// IList<MyTask> taskList = new List<MyTask>();
// foreach(var t in list)
// {
// if(t.Status == tag)
// taskList.Add(t);
// }
// return taskList;
// }
方法2:
//this.MyTaskList = selector(list,tag);
// Func<List<MyTask>,string,IList<MyTask>> selector = delegate(List<MyTask> List ,string tag) {
// IList<MyTask> taskList = new List<MyTask>();
// List.ForEach( l => {
// if(l.Status == tag)
// taskList.Add(l);
// });
// return taskList;
// };
方法3:
//this.MyTaskList = selector(list,tag);
// Func<List<MyTask>,string,IList<MyTask>> selector = (List<MyTask> List ,string tag) => {
// IList<MyTask> taskList = new List<MyTask>();
// List.ForEach( l => {
// if(l.Status == tag)
// taskList.Add(l);
// });
// return taskList;
// };
方法4:
this.MyTaskList = list.Where( l => l.Status == tag).ToList();