检查清单字符串是否为空

7

我有一个列表,其中包含空格("__")。

List<string> MyList = (List<string>)Session["MyList "];

if(MyList !=null || MyList != "")
{
}

如果字符串中有多余的空格,那么"MyList != "" "就不能正常工作。

如何使用C#中的LINQ检查我的列表字符串是否为""或null?


列表永远不会是 ""。您到底想要检查什么? - Jeroen Vannevel
永远别说“永远不”。我的列表有时候是空的 :)) - user2869820
1
@JeroenVannevel,列表永远不会是空字符串,但Session["MyList"]可能就是空字符串,我猜这就是OP的意思。 - Shadow The Spring Wizard
不是重复的,因为这是一个列表,而另一个只是一个字符串。 - user2869820
3个回答

20
if(MyList!=null || MyList.All(x=>string.IsNullOrWhiteSpace(x)))
{

}

4

试试这个:

if(MyList.All(s=>string.IsNullOrWhiteSpace(s)))
{
      ....
}

1
var emptyStrings = MyList.Where(p => string.IsNullOrWhiteSpace(p)).ToList();
var listWithoutEmptyStrings = MyList.Where(p => string.IsNullOrWhiteSpace(p)).ToList();

如果您只想检查列表是否包含一个或多个这样的项:
if (MyList.Any(p => string.IsNullOrWhiteSpace(p)))
{
}

如果您想检查所有元素是否为空或空字符串
if (MyList.All(p => string.IsNullOrWhiteSpace(p)))
{
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接