В отличие от int
(целое число), a float
имеют десятичную точку, как и double
. Но разница между ними заключается в том, что a double
вдвое более детально, чем float
, что означает, что он может иметь двойное количество чисел после десятичной запятой.
Извините, это на C #, но просто вызовите его, прежде чем связывать какие-либо новые данные, и он очистит все существующие данные ... если, конечно, проблема в том, что источник данных, который вы назначаете имеет дублированные данные.
gridview.DataSource=null;
gridview.DataBind();
Также, чтобы отметить, вы добавляете каждый столбец при каждом вызове этой процедуры? Вам необходимо запустить:
gridview.Columns.Clear();
Вы можете сбросить его источник данных и повторно привязать его, например
gv.datasource=""
gv.databind()
, а затем повторно использовать его
Обычно этого не происходит, когда вы повторно связываете сетку, например:
grid.DataSource = 'NEW_DATA_SOURCE'
grid.DataBind
Я думаю, что проблема в вашей функции выборки данных:
CreateDataTable(sSql)
Пожалуйста, проверьте это, если вы извлекаете данные каждые time в новый DataTable или используя тот же (может быть объявлен в глобальной области или передан из вашего класса в компонент доступа к данным). Однажды я потерял целую ночь, чтобы исправить это: (