我正在尝试为自定义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:传递给的IContextChannel无效 的OperationContext。必须是服务器调度通道或 客户代理渠道..
我如何模拟服务器调度通道?