LINQ语句检查空对象的问题
今天在写博客的页面集功能,根据url去寻找page,linq语句从sitepage的getmodellist()集合中获取符合条件的page,如果查询不到则跳转到404页面。代码是这样的:
var page = (from p in optsitepage.getmodellist() where p.virtualurlpath.tolower() == requesttitle.tolower() select p).first(); if (null == page) { context.response.redirect("/404.html"); 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 http://www.wyjexplorer.cn/home/view/d44f795b009e20fd.html
摘自 汪宇杰
上一篇: python批量生成身份证号到Excel的两种方法实例
下一篇: Python小笔记
推荐阅读
-
Mina IoSession playload对象为空的问题分析
-
LINQ语句检查空对象的问题
-
SQL Server使用Merge语句当源表数据集为空时,无法进行查询的问题
-
SQL Server使用Merge语句当源表数据集为空时,无法进行查询的问题
-
$.browser.msie 为空或不是对象问题的多种解决方法
-
用LinQ扩展方法,泛型扩展方法,实现自定义验证字符是否空、对象是否为null,及泛型约束使用,Action的使用
-
js为空或不是对象问题的快速解决方法_javascript技巧
-
java-第二个sql语句得到的resultset对象是空的怎么办
-
$.browser.msie 为空或不是对象问题的多种解决方法
-
LINQ语句检查空对象的问题