更常見的問題,但我怎麼寫LINQ Lambda表達式,以便它們將返回一個默認字符串或者只是一個空字符串,如果LINQ表達式失敗或不返回任何內容。在XSLT XPath中,如果匹配失敗,那麼只是沒有任何東西,應用程序沒有崩潰,而在LINQ中,似乎有異常。我該如何讓LINQ Lambda表達式像XPath一樣優雅地失敗?
我使用First()並嘗試FirstOrDefault()。
所以例如查詢可能是:
Customers.First(c=>c.id==CustId).Tasks.ToList();
或
Customers.Where(c=>c.id==CustId).ToList();
或
Model.myCustomers.Where(c=>c.id==CustId);
等
無論查詢,如果不返回任何記錄或空那麼是否有基因? ral的方法來確保查詢失敗優雅?
謝謝。
實在沒有辦法,除非你編寫自己的擴展方法。空處理只是當今大多數語言中最可怕的事情之一。 – Jacob