gpt4 book ai didi

c# - 如何将新属性添加到 C# 列表中的每个列表项

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

我是 C# 新手。我正在寻找这个没有任何运气。假设我将数据库结果转换为列表。类似下面的内容

var schedules = db.Schedules.Where(s => s.RequestId == id).ToList();

现在我需要向这个列表中添加一个新元素。不是列表项,而是列表中存在的每个列表项的属性。

例如在 php 中,如果它是一个多维数组,我可以使用 foreach 循环遍历数组,它很简单,如 $arrayList['new_key'] = "new_value";

如何在 C# 中将这样的属性添加到上面的 schedules 列表中?更准确地说; Schedule 是一个数据集。新属性也是我想从不同数据集的另一个属性中获取的东西。

非常感谢帮助。

编辑:现在我意识到我真正需要的是什么。我需要进行左外连接以连接 Schedule 和其他模型。我提出了一个新问题: How to create a simple left outer join in lambda expression in EF ASP.NET MVC5

最佳答案

“计划”(或返回的任何对象集)需要添加属性1。因此,要么将属性添加到对象,要么使用原始对象的属性(再加上一个)创建一个新对象并选择它。例如

class Schedule2 : Schedule
{
public String NewProperty { get; set; }

public Schedule2(Schedule schedule)
{
// assign original properties here from "Schedule". e.g.
base.RequestId = schedule.RequestId;
}
}

然后:

var schedules = db.Schedules
.Where(x => x.RequestId == id)
.Select(x => new Schedule2(x))
.ToList();

1 尽管 DynamicObject ,但我认为在这种情况下不合适。

关于c# - 如何将新属性添加到 C# 列表中的每个列表项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25434011/

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