Sorry but as i've stated before, i HAVE to use
return Json(items.ToDataSourceResult(request), JsonRequestBehavior.AllowGet);
[note the "ToDatSourceResult" method - which requires the control to have ".Type("aspnetmvc-ajax")" set]
If i do not use ToDatSourceResult, the returning object i get is NULL. Again i have to use this for the server side virtualisation of the multi select list, which can have a large number of data.
I have just tried your method that you have suggested, and I can see that the Json query returns data, but it does not populate the multi select list (I am guessing its due to the new data source?).
The only way that I have got the multi select to populate (when i have server side virtualisation enabled) to work is by modifying the parameter map as posted above.
I need to stress that the key point of difference here is that my multi select box has server side filtering enabled, this means:
1) using just the ".read()" operation will NOT pass in any new parameters if the controller has "HttpPost" and multi select control has ".Type" enabled (as we have found out)
2) using the ".read()" operation will NOT populate the multi select if i comment out the "HttpPost" on the controller and comment out the ".Type" enabled.
3) using the new data source options that you have suggested will NOT work, as I have virtualisation and server side filtering enabled, i.e. i need to use a custom source with parameter maps.
Can you show me how to modify the parameter map as i have posted previously so that it passes in the correct "DataSourceRequest" item? This is the only way that my multi select with virtualisation and server side filtering will work.