在ASP.NET C#中我有一个结构:
public struct Data
{
public int item1;
public int item2;
public int category_id;
public string category_name;
}
Run Code Online (Sandbox Code Playgroud)
我有一份清单.我要选择category_id和category_name,运行的DISTINCT最后一个ORDERBY上category_name.
这就是我现在拥有的:
List<Data> listObject = getData();
string[] catNames = listObject
.Select(i=> i.category_name)
.Distinct()
.OrderByDescending(s => s)
.ToArray();
Run Code Online (Sandbox Code Playgroud)
这显然只是获得了类别名称.我的问题是,我如何获得多个字段,以及将其存储在(不是a string[])中的数据结构?
编辑
使用结构列表并不是一成不变的.如果建议更改我的支持数据结构以使选择更容易(我将写很多这些),那么我很乐意接受建议.
我使用下面的查询来获取Entity Framework Linq中的所有列(20个以上).由于内存不足异常,我只想得到其中两个.一个是"FileName",另一个是"FilePath".如何修改我的代码?
var query = DBContext.Table1
.Where(c => c.FacilityID == facilityID && c.FilePath != null && c.TimeStationOffHook < oldDate)
.OrderBy(c => c.FilePath)
.Skip(1000)
.Take(1000)
.ToList();
foreach(var t in query)
{
Console.WriteLine(t.FilePath +"\\"+t.FileName);
}
Run Code Online (Sandbox Code Playgroud)