这是我的原始数据
LINQ代码
public PartialViewResult Menu()
{
IEnumerable<string> categories = repository.Products
.Select(x => x.Category)
.Distinct();
return PartialView(categories.Distinct());
}
LINQ结果
为什么使用不同的函数,LINQ有不同的结果
答案 0 :(得分:2)
类别末尾有时会出现空格。你不应该存储它们。您可以使用Trim
:
IEnumerable<string> categories = repository.Products
.Select(x => x.Category.Trim())
.Distinct();
但是,不是将类别作为字符串存储在您的产品表中,而是将外键添加到另一个表Category
&gt;&gt; Database normalization