How to insert item into list in order?(如何按顺序将项目插入列表?)
问题描述
我有一个 DateTimeOffset
对象列表,我想将新对象按顺序插入到列表中.
I have a List of DateTimeOffset
objects, and I want to insert new ones into the list in order.
List<DateTimeOffset> TimeList = ...
// determine the order before insert or add the new item
抱歉,需要更新我的问题.
Sorry, need to update my question.
List<customizedClass> ItemList = ...
//customizedClass contains DateTimeOffset object and other strings, int, etc.
ItemList.Sort(); // this won't work until set data comparison with DateTimeOffset
ItemList.OrderBy(); // this won't work until set data comparison with DateTimeOffset
另外,如何将DateTimeOffset
作为.OrderBy()
的参数?
Also, how to put DateTimeOffset
as the parameter of .OrderBy()
?
我也试过了:
ItemList = from s in ItemList
orderby s.PublishDate descending // .PublishDate is type DateTime
select s;
但是,它会返回此错误消息,
However, it returns this error message,
无法将类型System.Linq.IOrderedEnumerable"隐式转换为System.Collections.Gerneric.List".存在显式转换(您是否缺少演员表?)
Cannot implicitly convert type 'System.Linq.IOrderedEnumerable' to 'System.Collections.Gerneric.List'. An explicit conversion exist (are you missing a cast?)
推荐答案
修改你的LINQ,在末尾添加ToList():
Modify your LINQ, add ToList() at the end:
ItemList = (from s in ItemList
orderby s.PublishDate descending
select s).ToList();
或者将排序后的列表分配给另一个变量
Alternatively assign the sorted list to another variable
var sortedList = from s in ....
这篇关于如何按顺序将项目插入列表?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何按顺序将项目插入列表?


基础教程推荐
- 在 VS2010 中的 Post Build 事件中将 bin 文件复制到物 2022-01-01
- 从 VS 2017 .NET Core 项目的发布目录中排除文件 2022-01-01
- 将事件 TextChanged 分配给表单中的所有文本框 2022-01-01
- 首先创建代码,多对多,关联表中的附加字段 2022-01-01
- JSON.NET 中基于属性的类型解析 2022-01-01
- 是否可以在 asp classic 和 asp.net 之间共享会话状态 2022-01-01
- 全局 ASAX - 获取服务器名称 2022-01-01
- 如何动态获取文本框中datagridview列的总和 2022-01-01
- 经典 Asp 中的 ResolveUrl/Url.Content 等效项 2022-01-01
- 错误“此流不支持搜索操作"在 C# 中 2022-01-01