0

我想手动使 wcf 服务通道进入故障状态以测试单例对象。我尝试了很多解决方案,例如更改1.使用错误的服务主机名,2.错误的主机ip,3.减少执行时间以触发超时异常,4.除以零异常,5.抛出错误异常,6.null引用异常

但是没有什么可以使服务通道出现故障。好心劝告。提前致谢

4

1 回答 1

0

您使用的是什么类型的绑定?我认为您需要使用支持会话的绑定。你试过使用 WsHttpBinding 吗?请查看下面的代码示例并尝试为 b 传递 0 值以生成 DivideByZeroException。这将导致通道处于故障状态

我的服务合同:`

[ServiceContract]
    public interface ITestService
    {
        [OperationContract]
        int Division(int a, int b);
    }

` 我的服务合同实施:

`

public class TestService : ITestService
{
    public int Division(int a, int b)
    {
        return a / b;
    }   
    
}

`

端点:

`<endpoint address="TestService" binding="wsHttpBinding" 
          contract="ServiceFaultExceptionTest.ITestService">
        </endpoint>

`

于 2020-07-13T09:29:53.083 回答