.net 如何使WCF服务通道进入故障状态?

.net 如何使WCF服务通道进入故障状态?,.net,wcf,.net,Wcf,我在服务实现中尝试了超时和抛出异常,但这并没有像在我的产品代码中那样导致通道进入错误状态 出于测试目的,我如何强制此事件发生 下面的代码为第一个请求抛出一个异常,使其失败,但随后的请求成功(不幸的是,因为我的目标是使它们失败) 在服务器中引发未修补的异常将使您的Chanel处于故障状态,除非它是故障异常;(多亏了marc_s!)事实上,这是行不通的-使用FaultContracts或SOAP faults是专门设计的,不会让您的频道处于故障模式!我的异常不起作用,因为我在新请求之前丢弃了有故障的

我在服务实现中尝试了超时和抛出异常,但这并没有像在我的产品代码中那样导致通道进入错误状态

出于测试目的,我如何强制此事件发生

下面的代码为第一个请求抛出一个异常,使其失败,但随后的请求成功(不幸的是,因为我的目标是使它们失败)


在服务器中引发未修补的异常将使您的Chanel处于故障状态,除非它是故障异常;(多亏了marc_s!)

事实上,这是行不通的-使用FaultContracts或SOAP faults是专门设计的,不会让您的频道处于故障模式!我的异常不起作用,因为我在新请求之前丢弃了有故障的通道。
public class SampleService : ISampleService
{
    static bool first = true;

    SampleData ISampleService.SampleMethod(SampleData data)
    {
        if (first)
        {
            first = false;
            throw new Exception();
        }
        return data;
    }
}