My Silky has a real attitude with other dogs and also barking when someone comes to the door. I bought a can of "Pet Corrector" from a supply store and it worked wonders. It's just a spray can that emits a loud spray noise. Nothing comes out of the container except the noise but you're not supposed to do it too close to them. I imagine it only works on dogs who are sensitive to noises which mine is. Now, all I have to do is say the word "spray" and she will stop being aggressive with other dogs and stop barking. I think the can cost me 11 dollars. Well worth the investment if it works.

Found a link for it. I see it's more at Amazon but this is likely a larger can than the one I bought.
Amazon.com: Dog Supplies Pet Corrector Training...