[英]Exception Handling in lambda Expression
任何人都可以解釋如何處理lambda expression
異常處理。 我知道在Anonymous方法中我們可以使用try catch method
比如
Employee emp = listemp.Find(delegate(Employee employee)
{
try
{
if (number == 5)
throw new InvalidCastException();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
return employee.id == 101;
}
通過將上面的代碼轉換為我們擁有的Lambda Expression,
Employee e1 = listemp.Find(x => x.id == 101);
我的問題是:我們可以用這個表達式實現try catch嗎?
當然。 Lambda表達式只是方法,因此您可以編寫:
listemp.Find(x =>
{
bool found = false;
try
{
found = x.id == 101;
}
catch (Exception ex) { }
return found;
});
注意 :我沒有說可以捕獲這樣的異常,這僅用於示例目的。
當然,一旦你的匿名方法涉及到這一點 ,你應該考慮使用正確的方法。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.