c# - Linq 从两个表中选择按列表排序

标签 c# sql linq select sql-order-by

我想从中选择数据库中的两个表。在其中一个“事件”中,我有事件(Id、开始、结束、类型),在另一个“Events_before_after”中,我收集与“事件”中的某些事件链接的事件 - (Id、EventId、开始、结束、输入)。
我还有一个事件 ID 列表,我需要通过该列表对选择查询中的事件进行排序。

这就是我所拥有的:

List<int> orderIds = ...

from order in orderIds
join event in events order on order equals event.id
select new DataEvent ()
{
    eventId = event.Id,
    start = event.start,
    end = event.end,
    type = event.type
}).Concat
from eventOther in Events_before_after
select new DataEvent ()
{
    eventId = eventOther.Id,
    start = eventOther.start,
    end = eventOther.end,
    type = eventOther.type
}

是否可以订购第二个选择?我的意思是 - 有没有办法通过链接到“事件”的 eventId 来排序?

我需要的是:

event1
event2
eventBefore3
event3
eventAfter3

我拥有的是:

event1
event2
event3
eventBefore3
eventAfter3

最佳答案

你可以这样做:

 //your query
 ...
from eventOther in Events_before_after
select new DataEvent ()
{
    eventId = eventOther.Id,
    start = eventOther.start,
    end = eventOther.end,
    type = eventOther.type
}
into NewEvent
order by NewEvent.eventId
select NewEvent;

关于c# - Linq 从两个表中选择按列表排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13429140/

相关文章:

c# - 检查莫尔斯电码转换器的输入

MySQL 在查询大量条目时速度太慢,有好的替代方案吗?

php - MySQL 从 3 个表中选择并获取所有成员(member)在特定日期的出勤时间

sql - 选择没有指针的对象

c# - 尝试使用 LINQ 按创建日期获取目录中的文件列表

c# - 为什么我的 OrderBy 错误没有给出编译器警告?

c# - LINQ 沿着对象树查询需要匹配的值

c# - MEF:缺少 ComposeParts

C# - 程序显示该月中所有同一天的日期,用户输入

c# - 裁剪图像并将其调整为特定尺寸