将两个列表和linq查询组合起来,按来自不同列表的两个不同字段进行排序

时间:2016-11-03 18:05:25

标签: c# linq

我有不同字段的列表:

(defn home-page []
  (let fields (atom {})
    [:div.container
      [:h1 "Enter Code:"]
      [c/text-input "id" :id "enter code" fields]]))

我需要首先合并这些列表,然后按最新的发布日期或新闻发布日期排序。

根据此solution尝试,输出列表但不按预期按日期排序

var list1 = // contains 'publish date'
var list2 = // contains 'press release date'
var list3 = // contains 'publish date'
var list4 = // contains 'press release date'

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

此代码未经过测试,因为您没有提供列表示例,但您可以尝试:

var combinedList = OrderByDescending(x => x.Fields["Press Release Date"] != null ? x.Fields["Press Release Date"].ToString() : x.Fields["Publish Date"].ToString()).ToList();

关于名单的假设:

每个成员都有两个字段中的一个 - "新闻发布日期"或"发布日期"。