Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何从列表中删除项目<;元组<;日期时间,字符串>&燃气轮机;_C#_Linq_List_Tuples - Fatal编程技术网

C# 如何从列表中删除项目<;元组<;日期时间,字符串>&燃气轮机;

C# 如何从列表中删除项目<;元组<;日期时间,字符串>&燃气轮机;,c#,linq,list,tuples,C#,Linq,List,Tuples,我正在尝试从具有元组的列表中删除项,其中第一个元组项的日期早于今天的日期 这是我的密码: List<Tuple<DateTime, string>> Events = new List<Tuple<DateTime, string>>(); List Events=new List(); 最好是林克 我这样填写清单: Events.Add(new Tuple<DateTime, string>(date, stringtext)

我正在尝试从具有元组的列表中删除项,其中第一个元组项的日期早于今天的日期

这是我的密码:

 List<Tuple<DateTime, string>> Events = new List<Tuple<DateTime, string>>();
List Events=new List();
最好是林克

我这样填写清单:

 Events.Add(new Tuple<DateTime, string>(date, stringtext));
添加(新元组(日期、字符串文本)); 因此,列表中日期在2016年12月20日之前的任何项目。应该删除。第二个元组(字符串)无关紧要。

List events=new List();
List<Tuple<DateTime, string>> events = new List<Tuple<DateTime, string>>();

DateTime date = new DateTime(2016, 12, 20);

events = events.Where(x => x.Item1 > date).ToList();
DateTime日期=新的日期时间(2016年12月20日); events=events.Where(x=>x.Item1>date).ToList();

这将在您的活动中保留日期大于2016年12月20日的项目。

如果您确实需要从现有列表中删除这些项目(而不是像另一个解决方案所说的那样创建新列表),以下是代码:

List<Tuple<DateTime, string>> Events = new List<Tuple<DateTime, string>>();
DateTime date = new DateTime(2016, 12, 20);
Events.RemoveAll(x => x.Item1 < date);
List Events=new List();
DateTime日期=新的日期时间(2016年12月20日);
Events.RemoveAll(x=>x.Item1
这使用linq和
.ToList()
创建2016年12月20日当天或之后的事件列表,然后将新列表分配给
事件变量

events = events.Where(e=>e.Item1 >= new DateTime(2016, 12, 20)).ToList();

您真的要删除之前的项目,还是仅在2016年12月20日之后创建项目的枚举?因为很明显,您不能仅使用linq来删除它们,这将是在枚举时修改列表,这将是不好的。您可以使用linq和
.ToList()
创建2016年12月20日之后的事件列表,然后将新列表分配给
事件
变量need@KevinTinnemans如果对你有帮助的话,你可以把答案标记为正确是的,我需要在提问后等待15分钟,这是一个更好的方法(未创建其他集合)