Gridview按按钮上的列自动排序单击或绑定c#

Gridview按按钮上的列自动排序单击或绑定c#,c#,asp.net,sorting,gridview,C#,Asp.net,Sorting,Gridview,我有一个有趣的问题,我想听听你的想法。我有一个Gridview,它显示某个工作中心下的作业。Gridview可以像我们希望的那样工作,但在保存数据后,我们希望它通过SQ#进行绑定和重新排序。看起来很简单,但是第1列是来自SQL的值,其余的列来自AS400,因此不能只执行order by,因为它们是两个不同的服务器和两个不同的数据库,所以尝试执行以下操作: summGridView.Sort(summGridView.Columns[1], SortDirection.Ascending); 这

我有一个有趣的问题,我想听听你的想法。我有一个Gridview,它显示某个工作中心下的作业。Gridview可以像我们希望的那样工作,但在保存数据后,我们希望它通过SQ#进行绑定和重新排序。看起来很简单,但是第1列是来自SQL的值,其余的列来自AS400,因此不能只执行order by,因为它们是两个不同的服务器和两个不同的数据库,所以尝试执行以下操作:

summGridView.Sort(summGridView.Columns[1], SortDirection.Ascending);
这将在windows窗体中工作,但我在web窗体中执行此操作。表示无法从数据字段转换为字符串,因此尝试添加ToString(),这会导致以下错误:

索引超出范围。必须为非负数且小于集合的大小

下面是我所拥有的屏幕截图,我希望在按SQ#保存数据以进行排序后使用它。。想法


我最初在Gridview中执行foreach以获取SQL值。在与一位同事交谈后,我们决定尝试将所有内容拉入datatable foreach,然后执行dt.DefaultView.Sort=“SQ#”,然后对所有内容进行排序,然后将其推送到gridview。现在效果很好。

我最初是在Gridview中执行foreach以获取SQL值。在与一位同事交谈后,我们决定尝试将所有内容拉入datatable foreach,然后执行dt.DefaultView.Sort=“SQ#”,然后对所有内容进行排序,然后将其推送到gridview。现在效果很好。

在将源数据绑定到GridView之前,需要对其进行排序。直接在SQL中对数据表进行排序或使用Linq按列表进行排序。您可以使用Gridview并在Linq中对其进行排序吗?不,它必须是源数据。Hmm。我在gridview中为每一行添加一个SQ#字段之前不会添加该字段,这样我就可以使用订单从SQL中获取SQ#,并从AS400中获取操作顺序。。。所以那是行不通的。@VDWWD在我使用gridview上的foreach之前,我正在重做我的station,将其更改为datatable行上的foreach。。。在我能够使用此行之前。单元格[2]。从该行获取数据的文本。。。但是,我尝试row.ItemArray[2].ToString()从该行获取数据,但它无法工作。您知道怎么做吗?您需要在将源数据绑定到GridView之前对其进行排序。直接在SQL中对数据表进行排序或使用Linq按列表进行排序。您可以使用Gridview并在Linq中对其进行排序吗?不,它必须是源数据。Hmm。我在gridview中为每一行添加一个SQ#字段之前不会添加该字段,这样我就可以使用订单从SQL中获取SQ#,并从AS400中获取操作顺序。。。所以那是行不通的。@VDWWD在我使用gridview上的foreach之前,我正在重做我的station,将其更改为datatable行上的foreach。。。在我能够使用此行之前。单元格[2]。从该行获取数据的文本。。。但是,我尝试row.ItemArray[2].ToString()从该行获取数据,但它无法工作。你知道怎么做吗?