Heat a large non-stick frypan over medium heat. Drizzle fillets with olive oil and season with salt and pepper. Place fillets in frypan and sprinkle with half of the lemon. Cook for 3 minutes per side or until fish flakes easily with a fork. Transfer fillets to a plate and keep warm.
Add wine, juice of remaining 1/2 lemon, tomatoes, capers and salt and pepper to the frypan. Increase heat to medium high and boil for 2 minutes to burn off alcohol. Reduce heat to low and return fillets to the pan along with the asparagus. Cover and simmer 2 minutes more then transfer fish and asparagus to a serving dish and keep warm.
Increase heat to medium high, whisk in butter and boil to desired consistency. Spoon sauce over fish and serve.