Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# BindingList和列的灵活性_C#_.net 2.0_Bindinglist - Fatal编程技术网

C# BindingList和列的灵活性

C# BindingList和列的灵活性,c#,.net-2.0,bindinglist,C#,.net 2.0,Bindinglist,每个人都热衷于用BindingList代替DataTable 你们是如何克服立柱灵活性的问题的?对于BindingList,我需要定义并实现T对象。如果需要添加任何新列,我需要向T对象添加新属性……而在DataTable中,这要容易得多 BindingList<T> samples = new BindingList<T>(); BindingList示例=新建BindingList(); 这是你生活中的一件事,还是有一种相对容易克服的方法 使用c#2.0,紧凑的框架

每个人都热衷于用BindingList代替DataTable

你们是如何克服立柱灵活性的问题的?对于BindingList,我需要定义并实现T对象。如果需要添加任何新列,我需要向T对象添加新属性……而在DataTable中,这要容易得多

BindingList<T> samples = new BindingList<T>();
BindingList示例=新建BindingList();
这是你生活中的一件事,还是有一种相对容易克服的方法

使用c#2.0,紧凑的框架。

使用DataTable仍然(偶尔)有一些优点,而具有列灵活性就是其中之一。尽管如此,也有缺点

中列出了每种方法的优缺点的小比较

我个人的经验法则是使用
BindingList
绑定到业务对象的集合。在这种情况下,专栏问题就消失了(您已经知道那些专栏已经很有用了),而且感觉更加自然


如果您绑定到未知对象,并试图在运行时进行解析,则DataTable仍然很有用。

谢谢。我的设想是,我提前知道我要解析什么。但是如果我决定使用BindingList,那么业务对象将非常复杂。但另一方面,我可以看到未来的许多优势。下面是我的问题,描述了我的情景