繁体   English   中英

如何使用 C# razor 模板仅获取唯一值以显示在 2sxc 列表中?

[英]How do I only get unique values to appear in a 2sxc list with a C# razor template?

使用 2sxc App,我有一份职业卡列表。 在每张卡片上,我都为一个 CSS 类分配了一个类别,以便我可以使用侧栏中的按钮来过滤列表。 (使用名为 mixitup 的 javascript)。

因此,CSS 类“social-studies”可能出现 10 次,Math 可能出现 1 次,Science 可能出现 7 次——具体取决于该类别分配给职业的次数。

对于侧边栏的过滤器按钮,我只想显示使用的过滤器。 所以如果我的类别是:

  1. 社会研究
  2. 数学
  3. 科学
  4. 体育
  5. 英语
  6. 历史

但如果只使用社会研究、数学和科学,我只想展示这 3 个。

使用 2sxc 中的典型循环,我可以遍历每个实例,但这会创建一个包含重复过滤器按钮的大列表。 如何在 c# razor 中创建一个仅提供过滤器唯一实例的循环?

这比我想象的要容易。 我发现了“.Distinct()”

@foreach(var career in AsList(Data)) { 
            foreach(var schoolCategory in AsList(career.Categories as object).Distinct()){
                <button type="button" data-filter="@Html.Raw(".filter-" + schoolCategory.SchoolCategory.ToLower().Replace(" ","-"))" class="badge badge-secondary">@Html.Raw(schoolCategory.SchoolCategory)</button>
            }
        }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM