Well, WebServiceHost.BaseAddresses
is a collection, not a single object. So using .ToString() will just return the classname not the value. You just need to enumerate the collection in some way first, eg foreach would do the trick. Each base address is a Uri
, so we can use the AbsoluteUri
property to get the string representation:
public void MyTrace()
{
string addresses = string.Empty;
foreach (var address in m_WebServiceHost.BaseAddresses)
addresses += address.AbsoluteUri;
Trace.TraceInformation("URI {0}", addresses);
}