My suggestion ... do not use Visual Studio for a cross proxy class. If you have all your objects and your interface in the WCF library (without actually implementing the service, because it should be different anyway), why not just drop the client and access it directly. Here you have everything you need to do ...
public class MyWCFClient:ClientBase<IMyWCFServiceContract>, IMyWCFServiceContract {
Then bam! you have your proxy (client), and you reuse all of your DataContract classes that you created to include any methods that they do so that you can take advantage! Read this CodeProject to learn a little more about it. This not only solved a very similar problem that I had, but also allowed me to be more flexible in my DataContract objects, so I could use them not only for data transfer.
This method can save you the trouble of running multiple services, since the gererator of the VS service likes to create some namespaces associated with your current namespace. If you have a library go crazy.
If you do not have access to these libraries, do not completely ignore it, since you can use the code using the method described above CodeProject Article and also custimize the code (including namespaces).
source share