2010-03-30 2 views
0

Как Gridview взаимодействует с ObjectDataSource внутри? Когда вы устанавливаете DataSourceID из GridView, назначенный ObjectDataSource позаботится о таких вещах, как пейджинг и сортировка, но у меня нет полного контроля над привязкой к самому себе, с другой стороны, когда я устанавливаю источник данных gridview в коде:Как Gridview сотрудничает с ObjectDataSource?

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (!IsPostBack) 
    { 
     testGridView.DataSource = testObjectDataSource.Select(); 
     testGridView.DataBind(); 
    } 
} 

Теперь у меня есть полный контроль, но я потерял преимущество удобной сортировки и подкачки. И сотрудничество между ObjectDataSource и Gridview стало для меня загадкой. Так кто-нибудь может объяснить мне подробно, как ObjectDataSource и Gridview сотрудничают под капотом? Я хочу понять это, чтобы написать собственный смарт-код или собственный gridview, который будет имитировать это сотрудничество. Большое спасибо за ответы.

+0

Wonde: это хороший пример, но они используют там DataSourceID и это то, что я не хочу, а также они не объясняйте ODS и GV co-op там – sanjuro

ответ

1

Я считаю, что когда вы устанавливаете источник данных в коде, за которым вы все делаете, это данные, но без оперативной поддержки. Когда вы устанавливаете datasourceid, вы предоставляете источник данных для тяжелого подъема (вставка, фильтрация, сортировка и т. Д.).

Посмотрите, пожалуйста, более подробно об этом http://forums.asp.net/t/1104728.aspx.

---- ДОБАВЛЕНО ПОДРОБНЕЕ ---- Вот еще некоторые детали о том, как настроить свой собственный объект источника данных, который позволит вам увидеть то, что нужно, чтобы сделать такие операции, как сортировать и фильтровать и пейджинговой работы , http://www.codeproject.com/KB/aspnet/ObjectDataSourceInDepth.aspx

+0

спасибо, но это частично объясняет, почему это так, но я все еще хочу знать, как это работает под капотом :) – sanjuro

+0

Если вы действительно хотите посмотреть, что он делает, скачайте рефлектор (от красных ворот) и перечитывать код. –

Смежные вопросы