我正在尝试为自定义 ServiceAuthorizationManager 编写单元测试。对 CheckAccessCore 的调用将 OperationContext 作为参数。要实例化 OperationContext,必须将 IContextChannel 传递给构造函数。使用 MOQ,我声明了一个 IContextChannel:
private OperationContext _context;
private Mock<IContextChannel> _contextChannelMock;
然后我尝试创建 OperationContext:
_context = new OperationContext(_contextChannelMock.Object);
但是这一行抛出了一个异常:
结果消息:初始化方法 Urs.EnterpriseServices.Providers.Tests.UrsServiceAuthorizationManager_Tests.SetUp 引发异常。System.InvalidOperationException:System.InvalidOperationException:传递给 OperationContext 的 IContextChannel 无效。必须是服务器调度通道或客户端代理通道..
我如何模拟服务器调度通道?