在c#中,我可以写这样的东西:
if (
(
try {
...
return true;
}
catch (Exception ex)
{
return false;
}
) == true
)
{
...
}
Run Code Online (Sandbox Code Playgroud)
无需在新函数中移动我的所有try/catch块
- 编辑 -
好.我完成了我的问题.(也许可以回答一下).在try/catch中应该是一种XmlDocument.TryLoad(stream)(就像有一个int.tryParse(string)).我只需要它一次,这就是为什么我想避免做一个额外的功能.所以我的代码就像是
try {
new XmlDocument().Load(foo);
return true;
}
catch (Exception ex)
{
return false;
}
Run Code Online (Sandbox Code Playgroud)
我只是想知道它是否出错.我不在乎原因(流空,编码不好).
有很多有趣的答案,但我认为对我来说更合适的是为xmlDocument创建一个扩展方法.与在我的语句中强制使用匿名方法相比,它将更清晰(并且可重用且更易于阅读)
Jon*_*eet 10
你不能使用那种确切的语法,不.你可以写:
Func<bool> func = () =>
{
// Code in here
};
if (func())
{
...
}
Run Code Online (Sandbox Code Playgroud)
...但我个人将其提取到一个单独的方法中.它可能更具可读性 - 并且可能更容易测试.
| 归档时间: |
|
| 查看次数: |
1480 次 |
| 最近记录: |