我正在设置一个控制台应用程序来循环浏览网络中的服务器并收集它们最近的备份日期。我有服务器连接的循环并填充了所有备份日期的列表。我现在尝试按 CreationTime 对备份文件进行排序,选择最新的文件,然后将其添加到新列表中。
在这里,我有一个查询,按 creationTime 排序我想要的文件,按服务器分组,然后按 Max CreationTime 分组,并通过 slimQuery 选择这些项目。
List<Inputs> slimList = new List<Inputs>();
var orderByDescendingResult = from items in initialList
where items.FileName == "*GuestHelper*"
orderby items.CreationTime descending
select items;
var srvGroup = initialList.GroupBy(a => (a.ServerName.ToString()));
var maxDategroup = initialList.GroupBy(b => (b.CreationTime.Max()));
var slimQuery = from items in orderByDescendingResult
group srvGroup by maxDategroup into listItems
select listItems;
var initialName = from PropertyData p in slimQuery
where p.Name == "FileName"
select p.Value;
var initialDate = from PropertyData p in slimQuery
where p.Name == "CreationDate"
select p.Value;
var initialSize = from PropertyData p in slimQuery
where p.Name == "FileSize"
select p.Value;
var initialSrvr = from PropertyData p in slimQuery
where p.Name == "ServerName"
select p.Value;
var fileInfo = new Inputs
{
ServerName = initialSrvr.ToString(),
FileName = initialName.ToString(),
CreationTime = initialDate.ToString()
};
slimList.Add(fileInfo);
我的查询返回 null 因此没有任何内容添加到我的新列表中。那么他们为什么返回 null,我能做些什么来改变结果呢?