gpt4 book ai didi

c# - 获取不同的名称

转载 作者:太空宇宙 更新时间:2023-11-03 18:24:02 25 4
gpt4 key购买 nike

我正在尝试在我的列表 stationList 上使用 DISTINCT,但似乎我做错了什么,因为我没有得到不同的列表。我如何在设置 stationListValue 中获得不同的值。

foreach (StationCategory stationCategory in productCatalog.Programming.StationCategory)
{
StringBuilder stationList = new StringBuilder();
foreach (Station station in stationCategory.Station.Distinct())
{
stationList.Append(station.StationName + ",");
}
offer.FeatureList.Add(new Feature() { FeatureName = "<b>" + stationCategory.CategoryName + "</b>", Value = stationList.ToString().TrimEnd(',') });
}

最佳答案

您当前的代码确实有效,但它采用不同的对象引用,而不是您期望的名称。为此,您必须告诉代码如何匹配 Distinct

但是有一个问题,因为 Distinct 不接受 lambda,所以你不能说“给我不同的站名”。为此,您必须分组,就像在这个示例中一样:

var ds = stationCategory.Station.GroupBy(s => s.StationName)
.Select(g => g.FirstOrDefault());

ds 现在拥有可枚举的站点。您可以从中获取名称。不保证其他属性是唯一的。 (如果您只对名称感兴趣,可以使用此 Select:.Select(g => g.FirstOrDefault()?.StationName);)

关于c# - 获取不同的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40543598/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com