我想构建一个包含4列的内存表数据结构,这样我就可以根据列的任意组合查找值(例如使用linq)。 是否有内置的数据类型或者我必须自己制作一个(显然我不能)?
答案 0 :(得分:5)
除非你有一些特定的东西,否则我会声明一个具有4个属性的类型,这些属性具有合适的名称和类型,即
public class SomethingSuitable {
public int Foo {get;set;}
public string Bar {get;set;}
public DateTime Blap {get;set;}
public float Blip {get;set;}
}
并根据需要使用任何列表/数组/字典等,或只是
data.Single(x => x.Bar == "abc");
等
答案 1 :(得分:4)
检查DataTable课程。
答案 2 :(得分:3)
答案 3 :(得分:3)
我想你可能想要使用像List<Tuple<T1,T2,T3,T4>>
答案 4 :(得分:2)
请参阅DataTable
答案 5 :(得分:2)
您可以使用DataTable对象来执行此操作。请参阅:http://download.microsoft.com/download/5/8/6/5868081c-68aa-40de-9a45-a3803d8134b8/linq_over_dataset_for_csharp_developers.doc
答案 6 :(得分:1)
简单地说:
var dataStructure = new[] {
new { col1 = "something", col2 = "something else", col3 = 12, col4 = true },
new { col1 = "ha", col2 = "ha ha", col3 = 356, col4 = false },
new { col1 = "grrr", col2 = "grr grr", col3 = 213, col4 = true }
};
答案 7 :(得分:1)
您可以使用DataTable
甚至填充List<FourColClass>
,这将符合您要求的数据类型。 FourColClass
将是一个以属性作为列的类。