在LINQ

2019年11月4日 30点热度 0条评论 来源: Russel

与DefaultOrEmpty工作在默认或空的情况下,我想提供一些价值:在LINQ

string[] str = {string.Empty, "hello", "world" }; 

var select = str.Select(s => s).DefaultIfEmpty("nodata"); 

GridView1.DataSource = Select; 
GridView1.DataBind(); 

为什么我的网格没有得到填充:

nodata 
hello 
world 

相反,我得到:

hello 
world 

===========解决方案如下:

DefaultIfEmpty如果序列为空,提供一个缺省值 - 你要使用它的序列(即的String.Empty)的替代空值。您应该使用:

var select = str.Select(s => String.IsNullOrEmpty(s) ? "nodata" : s); 
    原文作者:Russel
    原文地址: https://stackoverflow.com/q/1896554
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。