As I am tightening up my Indigo demos for TechEd South Africa, I am going over a bunch of posts by Michele Leroux Bustamante which is helping me sort out "just getting it to run" vs. "writing services properly". Just getting it to run has its value for learning what is going on, but as I will be teaching others, I want to make sure I don't pass on any poor habits that I may have picked up from other sources. Thanks Michele!
These three (1, 2, 3) are all about making sure you write your services the Indigo way - decoupled.
Here is one that suggests taking advantage of the nicely generated proxy code. By the way, I loved Michele's comments about how great it is that the proxy classes are explicitly named with "proxy" in them so that you know what you are working with when coding up your client apps (this was in her recent .Net Rocks show.)
This post points out that it is possible to identify the baseaddress of your service's URI in a number of places, but it is not a great idea. Define the baseaddress in one spot and have all other code that needs it refer to that.