这篇文章是关于上次那篇LINQ教学的补充
不知道LINQ的话请先去翻那篇出来(版主有m起来)
1. 不确定资料有没有包含你所要资料的话请不要用First()
虽然上篇说传回单笔资料的话,First()比Single()好
但是First()方法有个很不妙的问题
就是当你找不到东西的时候他不是传回null而是直接抛出例外状况
因此如果你不确定你能不能找到东西(比方说抓Opendata很难确定对方资料)的时候
还是先把指标物件建立好并确定结果不是0个
(用“x.Count() != 0”当判断式,也可以直接用Any()),
再用First()方法把物件抓出来
通常中文字的状况会是发生在同音错字与同音别字上面
比方说环保署开放平台的台与台就不统一,
如果你要整并两个资料的时候没注意到,跑到一半就会出错了
(当然还有台北捷运那个一直不统一的票价系统......)
2. 请多善用Count() != 0或Any()的判断式
上面也提到了,抓资料的时候如果有先用Count()判断资料个数,
或者是Any()来判断有没有资料,不仅可以避免错误讯息,也可以让程式跑的比较快
(判断没有资料就完全不会执行里面的程式,可以少浪费些时间)
另外关于Count()与Any()的差别,请看小朱大的这篇文章
http://tinyurl.com/oghftve