如何使用Linq从列表中的列中删除空格?

时间:2016-08-26 05:56:45

标签: c# json asp.net-mvc linq

我将一个Json数组作为列表传递给MVC控制器。如何使用linq从列表中的列中删除空格?我的json数组如下所示。

var Refresh = function () {
    var Product = [
       {
           ProductCode: 'P 1',
           ProductName: 'P1Name',
           ProductType: "T1",
           Amount: "2000"
       },
       {
           ProductCode: 'P4',
           ProductName: 'P4 Name',
           ProductType: "T4",
           Amount: "2000"
       },
       {
           ProductCode: 'P2',
           ProductName: 'P2Name',
           ProductType: "T2",
           Amount: "2000"
       }
     ]

在上面的数组中,从ProductCode 'P 1''P1'以及从ProductName 'P4 Name''P4Name'删除空格。

3 个答案:

答案 0 :(得分:3)

jsonList  = jsonList.Where(s => !string.IsNullOrWhiteSpace(s)).Distinct().ToList()

空字符串和空格就像null。如果不是,您可以使用IsNullOrEmpty,或者s!= null。

答案 1 :(得分:1)

ForEach

中使用LINQ的另一种方法
products.ForEach(p=>{
p.Code=p.Code.Replace(" ","");
p.Name=P.Name.Replace(" ","")
})

答案 2 :(得分:1)

如果您需要遍历所有列并替换它们的值,请尝试以下代码:

implements Runnable

注意,如果您有匿名类型的对象列表,则此代码将不起作用,因为匿名类具有无法更改的只读属性。