Bring a large saucepan of lightly salted water to the boil. Carefully pour the macaroni into the boiling water, and cook for about 10 minutes until al dente. Do not overcook. Remove from the heat, drain and set aside.
Preheat the oven to 180°C/350°F/Gas mark 4. Grease a large casserole dish.
In a heavy frying pan, melt the butter and sauté the spring onions over a medium heat until soft. Add the flour and stir to mix well. Continue to sauté for about 3 minutes, then blend in first the evaporated milk, then the cream, then the mayonnaise. Finally, add the Cheddar cheese.
Stir the beaten eggs through the macaroni until evenly combined.
Mix the macaroni with the cheese sauce, and pour into the casserole dish. Sprinkle the top with the Parmesan, and bake in the oven for 20–30 minutes until the top has browned and the macaroni is piping hot. Turn off the heat and allow the macaroni cheese to cool a little. Serve warm.