If you use the ASP.NET MVC Framework, the default MVC parameter binder can deal with it automatically in the following way:
// GetData?filters[0][field]=fieldName&filters[0][type]=number&filters[0][value]=3
public ActionResult GetData(IEnumerable<Dictionary<string,string>> filters)
{
// todo
}
For more info and examples check out this blog post that I wrote on this topic.