Я хотел бы поймать исключение и сказать, было ли это, что я умышленно выдал ошибку или что-то вроде ошибки времени выполнения (объект не экземпляр объекта).
try
{
throw new Exception("throw this", "these can be many possible values");
}
catch (System.Exception ex)
{
if (IThrew) // <--- how can i tell if i threw or not?
{
exReport = "one thing"; // <--- Should go in here in this example.
}
else
{
exReport = "another thing";
}
throw new FaultException<ExceptionReport>(exReport, new FaultReason(ex.Message), new FaultCode("Receiver"));
}
Уточнение:
Мне нужно вести учет всех исключений, а затем в конце отобразить их в отчете об исключениях (массив исключений).Это часть схемы , которой я ТРЕБУЕТСЯ следовать.(поэтому, пожалуйста, не просите меня сделать это по-другому).
У меня все работает отлично, выдает что-то вроде:
...
<soap:Detail>
<ows:ExceptionReport>
<Exception exceptionCode="…" locator="…">
<ExceptionText>…</ExceptionText>
</Exception>
<Exception exceptionCode="…" locator="…">
<ExceptionText>…</ExceptionText>
</Exception>
</ows:ExceptionReport>
</soap:Detail>
...
Проблема в том, что когда у меня будетнесколько ошибок уже в моем ExceptionReport, тогда произойдет ошибка во время выполнения.
Но я понял, что поступаю неправильно по этому поводу ... как упоминал Гэри ... я не должен использовать исключения в качестве управления потоком.