Como analisar objetos JSON com chaves numéricas usando JavaScriptSerializer

Eu tenho um objeto como abaixo para ser desserializado em c #. Eu estou querendo saber como posso analisá-lo. Eu tentei seguiresse exemplo aqui, mas estou confuso sobre como posso fazer com que minha classe reconheça a chave de cada objeto (o2 e a3 abaixo).

A string JSON abaixo representa basicamente 2 transações. Gostaria de converter cada representação de transação em um objeto Transaction e colocá-lo em uma matriz do objeto Transaction.

{
    "2": {
        "id": "2",
        "user_id": "59",
        "offer_id": "1234"
    },
    "3": {
        "id": "3",
        "user_id": "59",
        "offer_id": "1234"
    }
}

Aqui estão as minhas aulas:

public class Transactions
{
    // what goes here since the "key" field is always different?
}

public class Transaction
{
    public int id { get; set; }
    public int user_id { get; set; }
    public int offer_id { get; set; }
}

questionAnswers(2)

yourAnswerToTheQuestion