In RequestHandler.GetParams(), make QueryParamAttribute, FormParamAttribute and HeaderParamAttribute first check if rawValue is an IDictionary and if so then iterate its contents and add those keys and values to queryParams, formParams, and headers respectively. Proceed as before if the value is not an IDictionary.