JSON.Net Ignorar propiedad durante la deserialización

Tengo una clase configurada de la siguiente manera:

public class Foo
{
    public string string1 { get; set; }
    public string string2 { get; set; }
    public string string3 { get; set; }
}

Estoy usando Json.Net para deserializar la siguiente Respuesta de Json:

string json = "[{\"number1\": 1, \"number2\": 12345678901234567890, \"number3\": 3},      
{\"number1\": 9, \"number2\": 12345678901234567890, \"number3\": 8}]";

Código de deserialización:

List<Foo> foos = JsonConvert.DeserializeObject<List<Foo>>(json);

El segundo número supera un int-64, pero realmente no me importa recuperar ese valor. ¿Hay una manera de convertir la propiedad 'number2' en una cadena, o ignorarla por completo durante la deserialización?

He intentado agregar el atributo '[JsonConverter (typeof (string))]' a la propiedad string2, pero recibo el error: 'Error al crear System.String'. También he intentado configurar typeof (decimal).

También he intentado usar [JsonIgnore] pero eso no funciona.

Respuestas a la pregunta(5)

Su respuesta a la pregunta