C#(2.0)DataView过滤,如何处理特殊字符

时间:2012-06-11 08:35:38

标签: c# c#-2.0 dataview

我有一个具有以下值的数据表(_dataTableAvailable):

Name        Id   Selected
- Global    2100  False
ASpecial    1200  False
BSpecial    2300  False
GSpecial    400   False

我使用了以下代码后:

DataView dataViewAvailable = new DataView(_dataTableAvailable, "selected=False", "name", DataViewRowState.CurrentRows);

排序顺序已更改!!

Name        Id   Selected
ASpecial    1200  False
BSpecial    2300  False
- Global    2100  False
GSpecial    400   False

我想要的是我获得相同的订单。 我怎么能这样做?

我使用visual studio 2005(C#2.0)。

2 个答案:

答案 0 :(得分:1)

由于您的数据表似乎按Id排序,因此您可以按ID对数据视图进行排序并获得相同的结果!  有关代码示例,请查看以下链接: DataView.Sort - more than just asc/desc (need custom sort)

答案 1 :(得分:0)

我找到了。这是一个错误,唯一的解决方案是添加一个额外的列并调用类似“NameSort”的东西。在这里放下顺序。 所以你得到:

Name        Id   Selected NameSort
- Global    2100  False   0
ASpecial    1200  False   1
BSpecial    2300  False   2
GSpecial    400   False   3

将代码更改为并且工作正常:

DataView dataViewAvailable = new DataView(_dataTableAvailable, "selected=False", "NameSort", DataViewRowState.CurrentRows);