public static TResult RequestHandle <TResult, TContract>(DuplexWcfProxy <TContract> proxy, Func <TContract, TResult> command) where TContract : class where TResult : OperationResult { try { var result = command.Invoke(proxy.WcfChannel); WcfResponseHandler.ResponseHandle(result); return(result); } catch (Exception) { proxy.Abort(); proxy.Close(); throw; } }
protected WcfAdapter(object callbackInstance, Uri address) { var endpointAddress = new EndpointAddress(address); _proxy = new DuplexWcfProxy <TContract>(callbackInstance, endpointAddress); }