У меня есть следующая оболочка, помогающая мне управлять временем жизни клиента wcf:
public class ServiceProxyHelper<TProxy, TChannel> : IDisposable
where TProxy : ClientBase<TChannel>, new()
where TChannel : class
{
private TProxy m_proxy;
public TProxy Proxy
{
get
{
if (m_proxy != null)
{
return m_proxy;
}
throw new ObjectDisposedException("ServiceProxyHelper");
}
}
protected ServiceProxyHelper()
{
m_proxy = new TProxy();
}
public void Dispose()
{
//....
}
}
Я использую это следующим образом:
public class AccountServiceClientWrapper : ServiceProxyHelper<AccountServiceClient, IAccountService>
{
}
public class Test()
{
using(AccountServiceClientWrapper wrapper = new AccountServiceClientWrapper())
{
wrapper.Proxy.Authenticate();
}
}
Как я могу изменить этот код, чтобы предоставить endpointConfigurationName для клиента?
wrapper.Proxy.Endpoint.Name = "MyCustomEndpointName";
не работает. endpointConfigurationName должен быть поставщиком для обслуживания клиента-конструктора, но как я могу это сделать с помощью этой оболочки?
Привет