I have created WCF netpipe connection on "net.pipe://localhost/IBS" which has an endpoint listening at "BasicService".
Creating this and hosting within my app is fine. But when I try to connect to this through "net.pipe://localhost/IBS/BasicService" this connection fails.
It throws exception like following.
There was no endpoint listening at **net.pipe://localhost/IBS/BasicService** that could accept the message.
This is often caused by an incorrect address or SOAP action. See InnerException, if present, for more details.
While digging into this, I found that this connection failure happens only when the hosting app is running in non-admin mode. If I switch to admin mode the connection succeeds.
The issue happens because some other pipe is open on net.pipe://localhost in admin mode. So while my client tries to communicate to net.pipe://localhost/IBS/BasicService it ends up searching in net.pipe://localhost for IBS/BasicService. Where as i wanted it to search in net.pipe://localhost/IBS for BasicService.
Services running in admin mode is taking precedence. Is there a way in WCF to configure it other way or at-least after not finding at localhost it should try finding in localhost/IBS also.
Thanks.