@Cem: page methods are just web services that happen to be defined from a page's code. Ajax 4.0 works well with any kind of JSON Web service and so should page methods. The difference is that you wouldn't be using an AdoNetDataSource. You could call the method using its client proxy (or call it using Sys.Net.WebServiceProxy.invoke) and set the data property of the dataview from the success callback. If you prefer to do things declaratively, you can do the same thing by using a DataSource using the query as the method name.