A little contact cleaner into the barrel would be a good first step but "little" being the operative word. For a "captive" switch such as the ignition, my approach would be to spray in a little contact cleaner, wait 30 mins, then spray in a larger dose of ipa170 servisol (available at maplins) to phsically flush out dirt/debris/stickiness/corrosion - and then leave it overnight.
I'm not looking at an ignition switch as I write, so can't remember if they have a flap/barrier in the top where the key is inserted - if it does, wedge it open with a small screwdriver
Once all the ipa170 has evaporated, a final and very small dose of contact cleaner & another short period of waiting for things to dry out/evaporate.
All of the above in a warm location to speed up the evaporation and obviously with the battery disconnected throughout....
I'm a bit of an advocate for ipa170 - use it on all sorts of things from cleaning camera sensors, circuit boards to much more mechanical things - it doesn't hurt most plastics, electrics and disappears quickly with no trace.