为了准备我的 70-513 考试,我发现了以下问题:
Windows Communication Foundation (WCF) 服务使用单向和请求-答复操作实现合同。该服务通过 TCP 传输公开。客户端使用路由器与服务通信。路由器实现如下。(包含的行号仅供参考。)
01 ServiceHost host = new ServiceHost(typeof(RoutingService));
02 host.AddServiceEndpoint (
03 typeof(ISimplexDatagramRouter),
04 new NetTcpBinding(), "net.tcp://localhost/Router"
05 );
06 List<ServiceEndpoint> lep = new List<ServiceEndpoint>();
07 lep.Add (
08 new ServiceEndpoint (
09 ContractDescription.GetContract(
10 typeof(ISimplexDatagramRouter)
11 ),
12 new NetTcpBinding(),
13 new EndpointAddress("net.tcp://localhost:8080/Logger")
14 )
15 );
16 RoutingConfiguration rc = new RoutingConfiguration();
17 rc.FilterTable.Add(new MatchAllMessageFilter(), lep);
18 host.Description.Behaviors.Add(new RoutingBehavior(rc));
请求-回复操作失败。您需要确保路由器可以处理单向和请求-回复操作。你该怎么办?
一个。将第 03 行更改如下
typeof((IRequestReplyRouter)
乙。将第 03 行更改如下
typeof((IDuplexSessionRouter)
C. _ 将第 10 行更改如下
typeof((IRequestReplyRouter)
D. _ 将第 10 行更改如下
typeof((IDuplexSessionRouter)
他们说正确的答案是B,但我无法理解(我需要理解 :))。我会回答响应A,因为没有回调方法,我们不需要 DuplexSessionRouter,不是吗?然后一个 IRequestReply 就足够了?
我错过了什么?