Koolworld wrote:
Hi, thanks for the response. I have related this to CA support and have this response from them - i'm sorry for labouring this point but i really want to know why CA won't support LLBLGen - their response is:
"DataSourceControl's ExecuteSelect method is not public and cannot be called by Grid.
Grid can handle the following types and interfaces as its data source (and attempts to, in that order):
SqlDataSource
ObjectDataSource
IDataSource
IListSource
DataView
DataSet
DataTable
IEnumerable
Note that IEnumerable is the last-resort, and most primitive, interface Grid attempts to use, but if your data source implements IDataSource or IListSource, as DataSourceControl does, there should be no problem.
Does LLBLGenProDataSourceControl implement its IDataSource's Select method, or IListSource's GetList method in a meaningful way?"
They should code against DataSourceControl, call IDataSource.GetView, which returns a DataSourceView derived class and call Select, Update, Insert and Delete. Then every datasourcecontrol on the planet works with their grid. Our datasourcecontrols derive from DataSourceControl and the views derive from DataSourceView.
However, their code didn't do that in the past. All other webgrid controls work the same way as I described above: call GetView, it will receive a DataSourceView derived class (LLBLGenProDataSourceView(2) ) and call Select etc. on that. I don't really understand why they bother casting to SqlDataSource or ObjectDataSource as it has no value: if they simply would program against DataSourceControl, DataSourceView, both would work and all other controls as well.
But, before this thread goes off-track, did you try our datasourcecontrols with their grid and it failed? Or were you wondering if it doesn't work? As their reply suggests that it should work.