我有以下包裝來幫助我管理WCF客戶生命週期:WCF服務包裝 - 傳遞endpointConfigurationName以服務客戶端構造
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應該是服務客戶端構造函數的提供者,但我如何使用這個包裝來做到這一點?
問候
你們是不是在運行時改變這個或者這是助手的每個實例的靜態端點名稱中刪除
"new"
關鍵字? – 2010-08-24 11:38:48這將爲助手實例配置一次。 – jwaliszko 2010-08-24 14:23:05