I have been having good results with MicroLubrol - a 100% Silicone oil.

I put a few drops on the bolt head lugs and wipe with a cotton rag. Just a very light coating.

The rest of the metal gets an occasional wipe down with Birchwood Casey Sheath (was formerly Barricade) that is a protectant oil.

I use liquids - not sprays.