JavaScriptSerializer - nombre de propiedad personalizada

Estoy usando JavaScriptSerializer para deserializar datos json. Todo funciona bastante bien, pero mi problema es que una propiedad en los datos json se llama 'base', por lo que no puedo crear dicha propiedad en mi código C #. Descubrí que puedo asignar valores manualmente a propiedades en el constructor, pero el problema es que mis DTO tienen como 200 propiedades, por lo que no quiero hacer esto manualmente y preferiría encontrar cualquier otra solución. También intenté usar anotaciones, pero esto:

[JsonProperty("base")]
public int baseValue { get; set; }

no me ayudó, el valor baseValue se estableció en 0 cada vez (si crees que esta anotación debería funcionar, puedo publicar todo mi código, no solo estas 2 líneas)

¿Hay alguna manera de cómo podría simplemente resolver mi problema?