今天在寫博客的頁面集功能
根據URL去尋找Page
LINQ語句從SitePage的GetModelList()集合中獲取符合條件的page
如果查詢不到則跳轉到
頁面
代碼是這樣的
var page = (from p in optSitePage
GetModelList()
where p
VirtualUrlPath
ToLower() == requestTitle
ToLower()
select p)
First()
if (null == page) {
context
Response
Redirect(
/l
)
return; }
我故意傳了個不存在的URL
結果linq語句直接報錯
System
InvalidOperationException: Sequence contains no elements
查了下MSDN發現用了First()的話
如果結果集中沒有元素
它是不會返回null的
改成FirstOrDefault()就 好了
?var page = (from p in optSitePage
GetModelList()
where p
VirtualUrlPath
ToLower() == requestTitle
ToLower()
select p)
FirstOrDefault()
traceback
From:http://tw.wingwit.com/Article/program/net/201311/12738.html