В C#, что-то вроде этого я могу написать:C# анонимный метод в выражении if?
if (
(
try {
...
return true;
}
catch (Exception ex)
{
return false;
}
) == true
)
{
...
}
без необходимости перемещать все мои попытки/поймать блок внутри новой функции
- редактировать -
OK. Я завершу свой вопрос. (и, возможно, немного ответит). То, что должно быть в try/catch, является своего рода XmlDocument.TryLoad (поток) (например, есть int.tryParse (строка)). Мне понадобится это только один раз, поэтому я хотел бы избежать дополнительных функций. Так что мой код будет что-то вроде
try {
new XmlDocument().Load(foo);
return true;
}
catch (Exception ex)
{
return false;
}
Я просто хочу знать, если это пойдет не так. Меня не волнует причина (поток пустой, плохое кодирование).
Есть много интересных ответов, но я думаю, что более подходящим для меня является создание метода расширения для xmlDocument. Это будет более чистым (и многоразовым и более простым для чтения), чем попытка заставить анонимный метод в моем заявлении
В первую очередь, я стараюсь избегать использования 'попробовать/catch' нравится это. Вы ловите каждое исключение, которое будет выброшено. Игнорирование исключений может легко сделать отладочный кошмар. – Leri
На самом деле мне все равно, какая именно причина его ловит. В следующем случае я выйду из строя, если возвращаемое значение не было истинным. – frenchone