У меня есть DataTable, который объявлен в начале моего класса следующим образом:
private DataTable table = new TestData().FillTable();
Во всем классе я могу получить доступ к содержимому таблицы.
Однако у меня есть событие сортировки GridView, которое изменяет содержимое DataTable. В самом событии содержимое изменяется, и я подтвердил это путем отладки. Однако если я вызову таблицу из-за пределов этого метода, содержимое DataTable останется прежним, то есть новые значения будут стерты, как только закончится область действия события.
Вот код моего события сортировки:
protected void TableGridView_Sorting(object sender, GridViewSortEventArgs e)
{
table.DefaultView.Sort = "GroupNumber, " + e.SortExpression + GetSortDirectio(e.SortExpression);
TableGridView.DataSource = table;
TableGridView.DataBind();
}
Когда я проверяю содержимое таблицы в указанном выше событии, новые значения, кажется, добавляются. Однако, если я вызываю таблицу из любого другого метода, возвращаются старые значения.
Что я могу сделать, чтобы содержимое таблицы обновлялось глобально, то есть до переменной, объявленной в начале моего класса, и не иметь разных состояний в зависимости от методов?