Xinchen.WebSite.Views.<>c__DisplayClass7.<Page_Load>b__2(String y) +105
System.Linq.WhereArrayIterator`1.MoveNext() +55
System.Linq.Enumerable.Count(IEnumerable`1 source) +201
Xinchen.WebSite.Views.Search.<Page_Load>b__1(ArticleModel x) +172
System.Linq.WhereListIterator`1.MoveNext() +58
System.Linq.Buffer`1..ctor(IEnumerable`1 source) +325
System.Linq.<GetEnumerator>d__0.MoveNext() +96
System.Collections.Generic.List`1..ctor(IEnumerable`1 collection) +327
System.Linq.Enumerable.ToList(IEnumerable`1 source) +58
Xinchen.WebSite.Views.Search.Page_Load(Object sender, EventArgs e) +801
System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +14
System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +35
System.Web.UI.Control.OnLoad(EventArgs e) +91
System.Web.UI.Control.LoadRecursive() +74
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +2207
到底哪儿错了?
看不懂,加号到底什么意思?
本地是正常的,服务器上挂了
11 个解决方案
#1
数据有空值
#2
我检查不出来啊···
#3
未将对象引用设置到对象实例。
在某个null对象上 点 了 属性或方法。
大概在Page_Load的某个循环里面。
在某个null对象上 点 了 属性或方法。
大概在Page_Load的某个循环里面。
#4
现在知道哪儿错了
resultArticle = articleEntity.Objects.Where(x =>
{
if ((keyWords.Where(y => x.Title.ToUpper().Contains(y) || x.Content.ToUpper().Contains(y)).Count() > 0) && ((DateTime.Now - x.EditTime).TotalHours <= hours || hours == 0))
{
resultCount++;
return true;
}
return false;
});
title.InnerText = HtmlHelper.Encode(keyWord) + " - 搜索结果 - 馨辰网";
PagedDataSource pageDataSource = new PagedDataSource();
pageDataSource.PageSize = 10;
pageDataSource.DataSource = resultArticle.OrderByDescending(x => x.EditTime).ToList();//这句在ToList()这一步挂了,但在本地没有问题
#5
空值引用了嘛,断点调试下
#6
ToList()是系统方法啊,怎么调试?我把ToList()去掉的话就会提示另外一个错误了,必须转换为List才行
#7
现在换成foreach遍历resultArticle也出错了,也还是不知道是哪儿错了。本地没有问题
#8
解决了,结贴
#9
绑定前先判断resultArticle是不是空,然后再ToList();
#10
pageDataSource.DataSource = resultArticle.OrderByDescending(x => x.EditTime).ToList();//这句在ToList()这一步挂了,但在本地没有问题
可能 resultArticle在生产环境是为NULL值导致异常。
可能 resultArticle在生产环境是为NULL值导致异常。
#11
Linq.where总是会返回一个List,resultArticle不会为null
错误在这儿,把代码一点一点地删除掉才检查出来
keyWords.Where(y => x.Title.ToUpper().Contains(y) || x.Content.ToUpper().Contains(y)).Count()
这儿改成
keyWords.Where(y => x.Title.ToUpper().Contains(y) || (x.Content==null?"":x.Content).ToUpper().Contains(y)).Count()
问题解决
错误在这儿,把代码一点一点地删除掉才检查出来
keyWords.Where(y => x.Title.ToUpper().Contains(y) || x.Content.ToUpper().Contains(y)).Count()
这儿改成
keyWords.Where(y => x.Title.ToUpper().Contains(y) || (x.Content==null?"":x.Content).ToUpper().Contains(y)).Count()
问题解决
#1
数据有空值
#2
我检查不出来啊···
#3
未将对象引用设置到对象实例。
在某个null对象上 点 了 属性或方法。
大概在Page_Load的某个循环里面。
在某个null对象上 点 了 属性或方法。
大概在Page_Load的某个循环里面。
#4
现在知道哪儿错了
resultArticle = articleEntity.Objects.Where(x =>
{
if ((keyWords.Where(y => x.Title.ToUpper().Contains(y) || x.Content.ToUpper().Contains(y)).Count() > 0) && ((DateTime.Now - x.EditTime).TotalHours <= hours || hours == 0))
{
resultCount++;
return true;
}
return false;
});
title.InnerText = HtmlHelper.Encode(keyWord) + " - 搜索结果 - 馨辰网";
PagedDataSource pageDataSource = new PagedDataSource();
pageDataSource.PageSize = 10;
pageDataSource.DataSource = resultArticle.OrderByDescending(x => x.EditTime).ToList();//这句在ToList()这一步挂了,但在本地没有问题
#5
空值引用了嘛,断点调试下
#6
ToList()是系统方法啊,怎么调试?我把ToList()去掉的话就会提示另外一个错误了,必须转换为List才行
#7
现在换成foreach遍历resultArticle也出错了,也还是不知道是哪儿错了。本地没有问题
#8
解决了,结贴
#9
绑定前先判断resultArticle是不是空,然后再ToList();
#10
pageDataSource.DataSource = resultArticle.OrderByDescending(x => x.EditTime).ToList();//这句在ToList()这一步挂了,但在本地没有问题
可能 resultArticle在生产环境是为NULL值导致异常。
可能 resultArticle在生产环境是为NULL值导致异常。
#11
Linq.where总是会返回一个List,resultArticle不会为null
错误在这儿,把代码一点一点地删除掉才检查出来
keyWords.Where(y => x.Title.ToUpper().Contains(y) || x.Content.ToUpper().Contains(y)).Count()
这儿改成
keyWords.Where(y => x.Title.ToUpper().Contains(y) || (x.Content==null?"":x.Content).ToUpper().Contains(y)).Count()
问题解决
错误在这儿,把代码一点一点地删除掉才检查出来
keyWords.Where(y => x.Title.ToUpper().Contains(y) || x.Content.ToUpper().Contains(y)).Count()
这儿改成
keyWords.Where(y => x.Title.ToUpper().Contains(y) || (x.Content==null?"":x.Content).ToUpper().Contains(y)).Count()
问题解决