Linq似乎不起作用。在哪里

时间:2015-09-27 11:49:53

标签: c# linq

这里是我的linq代码我想用linq过滤一个列表但是它似乎在这种情况下不起作用并且不返回带有ItemName == stringItemName匹配的列表,

JsonResult jso = Json(ItemList
                .Where(x => x.ItemName==stringItemName)
                .Select(x => new { x.Year }).Distinct()
                .Select(x => new { Text = x.Year.ToShortDateString(), Value = x.ToShortDateString() }));

也不是

JsonResult jso = Json(ItemList
                .Where(x => x.ItemName.Equals(stringItemName))
                .Select(x => new { x.Year }).Distinct()
                .Select(x => new { Text = x.Year.ToShortDateString(), Value = x.ToShortDateString() }));

我想知道为什么它过去在不同的情况下工作但现在不起作用。我做错了什么..

1 个答案:

答案 0 :(得分:0)

问题是基础数据出错。我添加了.Trim(),现在相同的代码块按预期工作。

JsonResult jso = Json(ItemList
            .Where(x => x.ItemName.Trim().Equals(stringItemName))
            .Select(x => new { x.Year }).Distinct()
            .Select(x => new { Text = x.Year.ToShortDateString(), Value = x.ToShortDateString() }));