Как заставить сервисный канал WCF войти в неисправное состояние?
Я пробовал тайм-ауты и выдавал исключения в реализации сервиса, но это не привело к тому, что канал перешел в неисправное состояние, как это происходит в моем производственном коде.
Как я мог заставить это событие произойти в целях тестирования?
В следующем коде выдается исключение для первого запроса, что приводит к сбою, но последующие запросы выполняются успешно (к сожалению, так как моя цель - заставить их завершиться с ошибкой)
public class SampleService : ISampleService
{
static bool first = true;
SampleData ISampleService.SampleMethod(SampleData data)
{
if (first)
{
first = false;
throw new Exception();
}
return data;
}
}
1 ответ
Решение
Возврат на ваш сервер неотслеживаемого исключения переведет ваш Chanel в состояние ошибки, если только это не FaultException; (спасибо marc_s!)