I would not recommend using dishwasher for the whole keyboard - I had problems with rust caused by trapped water and also with plastic warping in the drying cycle.
On the other hand, dishwasher works fine for key caps, although I switched to ultrasonic cleaner, as it's faster and more effective. This is the model that I have:
It usually takes one 8 minute cycle and a few drops of dish-washing liquid.
The case is easy enough to clean by hand with Windex or ammonia based spray cleaner.
For switches and pcb - I recently had good results using parts washer such as these:
I have kerosene in mine, although Odorless Mineral Spirits would be preferable to avoid the smell. The problem is, it cost $10 a gallon, vs $3 for kerosene.
Parts washer method is safe for rubber and plastic and will not cause corrosion in metal parts. Best of all, kerosene is very effective at cutting grease and dirt. This past week I used this method to clean a keyboard with white Alps switches that were sticky inside, so I had problems with switches not clicking and sometimes detecting a double press. I soaked the assembly in kerosene for a couple hours then scrubbed it with nylon brush under a stream of cleaner, and finally blew all switches with compressed air. Now the switches are completely clean and clicky again!
The only problem with this method is that it will remove all traces of grease that's used on switch stems, and now have too much friction when it get's hit off-center.
Any recommendation on type of lubricant and method of application?
?
I'm thinking - to try dry lube PTFE spray, such as this ($4.50 at Walmart):
And if that is not sufficient, manually apply silicone grease to just the stems