この例に従って、シムを活用して、単体テストを実行しているメソッドから呼び出される WCF サービス呼び出しの外部依存関係を削除しようとしています。例とは異なり、次のようなコードを使用して、WCF クライアントをオンザフライで生成します。
ChannelFactory<IReportBroker> factory = new ChannelFactory<IReportBroker>("ReportBrokerBasicHttpStreamed", new EndpointAddress(this.CurrentSecurityZoneConfigurationManager.ConfigurationSettings[Constants.ConfigurationKeys.ReportBrokerServiceUrl]));
IReportBroker proxy = factory.CreateChannel();
proxy.Execute(requestMessage))
CreateChannel メソッドによって返されたプロキシをシム処理するために、その例をどのように適応させるのですか? ShimWCFService クラスでは、次のようなものを追加する必要があると想定しています....
ShimChannelFactory<TService>.AllInstances.CreateChannel = (var1) => { return [instance of a mock object]};
<TService>
ただし、戻り値としてその shim にのモック オブジェクトを関連付ける方法がわかりません。