Line a 20 to 23 cm (8 to 9 in) pie tin with pastry and bake blind for about 10 minutes at 150 C / Gas 2. Remove and set aside. Increase oven temperature to 180 C / Gas 4.
Melt the butter in a frying pan, add the onion and garlic and gently fry till soft. Add the mushrooms and cook for 2 to 3 minutes.
In another pan, heat a drizzle of oil and fry the salmon for about 2 minutes each side, or until it flakes easily.
To prepare the asparagus my method is to hold each spear at either end and bend slowly until it snaps. Discard the lower part. Lightly peel the top part of the stalk from just below the head. Place in a pan of boiling salted water until soft and tender. Drain and cool with cold water. Chop into 1/2 inch lengths.
Place the onions and mushrooms over the bottom of the pre-baked pastry case and add the flaked salmon and the asparagus. Crumble the goat's cheese or cut into pieces and place over the top.
Roll out another sheet of pastry and place on top, sealing the edges with beaten egg. Brush more egg over the top.
Bake at 180 C / Gas 4 for about 30 minutes or until golden brown.
For this pie I used shortcrust pastry. Whether you choose to make your own or use pre-packed pastry is up to you. Personally if it's shortcrust I make my own, but if I'm opting for puff pastry well... life is just too short.