Я новичок в ASP.NET, и я хочу написать простую WebApplication с помощью WebForms, которая подключается к базе данных и отображает некоторые данные в Grid (с пейджингом). Я использую Visual Studio 2015ASP.NET GridView Model-binding
Для отображения данных я использую GridView в сочетании с ObjectDataSource.
Я использую EntityFramework и метод GetCustomer(), который возвращает все Клиенты из database.I использовать этот метод как SelectMethod
Мой вопрос:
Оба элемента управления, GridView ObjectDataSource, имеют параметры для Paging and SelectMethod
Какой параметр управления для пейджинга и SelectMethod следует использовать, если я хочу использовать Model Binding
?
В настоящее время я использую это:
GridView :<br>
AllowPaging = true<br>
PageSize = 10<br>
SelectMethod = ""<br>
DataSourceID = dsCustomers<br>
ObjectDataSource:<br>
ID = dsCustomers<br>
EnablePaging = false<br>
SelectMethod = GetCustomers()<br>
MaximumRowParameterName = ""<br>
StartRowIndexParameterName = ""<br>
Эти настройки работают, данные Displyed и пейджинговой работает.
Но я не уверен, что это правильный способ сделать это.
И если изменить настройки для Paging and SelectMethod
как так
GridView: <br>
AllowPaging = false<br>
PageSize = ""<br>
SelectMethod = GetCustomers()<br>
DataSourceID = dsCustomers<br>
ObjectDataSource:<br>
ID = dsCustomers<br>
EnablePaging = true<br>
SelectMethod = <br>
MaximumRowParameterName = ""<br>
StartRowIndexParameterName = ""<br>
Я получаю сообщение об ошибке:
DataSource или DataSourceID не могут быть определены на «gridViewCustomers» , когда он использует модель связывания.
Если удалить DataSourceID из GridView, то я получаю
«Публичный метод с именем„GetCustomers“был не найден либо были несколько методов, с тем же именем»
thx для вашего ответа Но я вижу много примеров в сети, которые помещают SelectMethod в GridView , например http://www.dotnetjalps.com/2013/03/SelectMethod-in-asp-net-45-Model -binding.html Это то, что меня смущает ... есть ли лучшая практика о том, как реализовать привязку модели с помощью GridView & DataSource? – Spacewalker
Все зависит от того, каково ваше требование. Если вам просто нужно привязать некоторые данные ТОЛЬКО к gridview, тогда перейдите и используйте SelectMethod.But, если у вас есть целая куча сеток и других элементов управления, которые должны использовать один и тот же источник данных, тогда используйте объект ObjectDataSource или SqlDataSource и установите для них метод select. Неправильный или неправильный способ сделать это, все зависит от ваших требований –