gpt4 book ai didi

c# - 获取许多对象列表的属性

转载 作者:行者123 更新时间:2023-11-30 21:36:25 25 4
gpt4 key购买 nike

我有以下对象:

public class User {
public Int32 Id { get; set; }
public List<Language> Languages { get; set; }
public List<Skill> Skills { get; set; }
}

public class Language {
public Int32 Id { get; set; }
public String Name { get; set; }
}

public class Skill {
public Int32 Id { get; set; }
public String Name { get; set; }
}

然后我有以下查询:

List<UserModel> models = context.Users.Select(x =>
new UserModel {
Id = x.Id,
Names = ????
}).ToList();

我需要:
1. 第一种用户语言的名称,如果有的话。
2. 前 2 个用户技能的名称,如果有的话。

并将这些名称添加到 UserModel.Names,其中 UserModel 是:

public class UserModel {
public Int32 Id { get; set; }
public List<String> Names { get; set; }
}

如何在我的查询中执行此操作?

最佳答案

您可以使用TakeConcat。请尝试此代码:

List<UserModel> models = context.Users.Select(x =>
new UserModel {
Id = x.Id,
Names = x.Languages.Take(1).Select(y=>y.Name)
.Concat(x.Skills.Take(2).Select(y => y.Name)).ToList()
}).ToList();

关于c# - 获取许多对象列表的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48229815/

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