Linq偵錯方式

2014年2月14日 星期五

linq 裡也可以寫funciton來表示

原寫法,當資料有問題則直接出錯

 

List<Order> order = GetAllOrderList();

order = order.Where(o=>o.status.Equals(1) && o.paymentStatus.Equals(1));


如果要查哪筆資料出錯可以用以下寫法



List<Order> orderList = GetAllOrderList();

orderList = orderList.Where(o=>
{
var hasHit =false;
try
{
hasHit = o.status == "NCCC" && o.paymentStatus ==1;
}
catch(Exception ex)
{
var error = o.id;
var err = ex.Message;
}
}).ToList();


等於方式用”Equals”時要很小心,物件一定要有值才不會出錯



所以我改成用==方式來處理就沒這麼問題了



利用function寫法可以讓錯誤更容易偵錯喔。

Read more...