熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

LINQ語句檢查空對象的問題

2013-11-13 10:09:30  來源: .NET編程 
    今天在寫博客的頁面集功能根據URL去尋找PageLINQ語句從SitePage的GetModelList()集合中獲取符合條件的page如果查詢不到則跳轉到頁面代碼是這樣的
   
    var page = (from p in optSitePageGetModelList()
   
    where pVirtualUrlPathToLower() == requestTitleToLower()
   
    select p)First()   if (null == page) {
   
    contextResponseRedirect(/l
   
    return; }
   
    我故意傳了個不存在的URL結果linq語句直接報錯SystemInvalidOperationException: Sequence contains no elements查了下MSDN發現用了First()的話如果結果集中沒有元素它是不會返回null的改成FirstOrDefault()就 好了
   
    ?var page = (from p in optSitePageGetModelList()
   
    where pVirtualUrlPathToLower() == requestTitleToLower()
   
    select p)FirstOrDefault()
   
    traceback
From:http://tw.wingwit.com/Article/program/net/201311/12738.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.