Peel the white asparagus from top to bottom, making sure that the peel and woody pieces are completely removed but the heads are not injured. Peel the green asparagus only at the bottom.
Cut the asparagus into 3-5cm long pieces. Cook the asparagus pieces in boiling salted water with butter, salt and sugar for 8-10 minutes. Place the asparagus pieces on a sieve to drain.
Peel the onion, cut into fine rings, place in a bowl with the asparagus.
For the salad dressing, mix the oil and the remaining ingredients into a sauce, pour over the asparagus and let it steep. Season the salad again to taste.
Peel and chop the eggs and sprinkle over the salad.