Q:

How to pass an additional parameter to CascadingDropDown ServiceMethod?

I have two chained CascadingDropDowns. Both are working fine.
The thing is that in the underlying web methods which are supplying values for DropDwonList I need read one additional parameter. This parameter is needed for setting up the default item for dropdownlist.
I do not know how to pass that parameter or read it.
I've read on the Internet about the ContextKey property. But I do not know how to acces it from the WebMethod.
I've tried to get to the session through HttpContext.Current.Session (hoping that I could extract some parameter from the session) but it seams that the Session is different for the WebPage and WebMethod.
So I am lost here, any ideas?

A:

You need three things to get the ContextKey to work.

Set UseContextKey property on the CascadingDropDown to true
Change the method signature of your webmethod to accept the contextKey parameter:

public CascadingDropDownNameValue[] GetDropDownContents(
           string knownCategoryValues, string category, string contextKey) { ... }
NOTE: The parameter has to be exact casing.

Set the ContextKey using JavaScript. The AJAX CascadingDropDown exposes getter/setter for this property in the DOM:
document.getElementById('idOfCDDL').set_contextKey('valueyouwant');

HTH.

