【发布时间】:2022-01-23 14:52:30
【问题描述】:
NET,我需要将一个列表中的对象项的值复制到另一个列表中,这就是我所拥有的:
List<Business> businesses; // from where I want to copy the value
PaginationResult<Business> paginatedBusinesses // contains the final list
类型分页结果里面有一个列表:
public class PaginationResult<T>
{
public PaginationResult();
//
// Summary:
// This is the collection of paged items
public List<T> Items { get; set; }
业务对象包含以下属性:
public class Business : IAggregateRoot
{
/// <summary>
/// Unique identifier of the business
/// </summary>
public Guid Id { get; set; }
...
/// <summary>
/// The epoch timestamp this user last accessed this business.
/// </summary>
public long? LastAccessed { get; set; }
这里我将 paginatedBusiness 列表的项目转换为 Business 类:
var paginatedBusinesses = results.ConvertItems<Business>((i) => i.ToDomainEntity());
我需要将 LastAccessed 值从 businesses 列表复制到 paginatedBusinesses.Items。 搜索 Id(两个列表的 id 具有相同的值,但在首先我们有 LastAccessed 值,而在最终列表中我们没有它)。我该怎么做?我尝试过类似的东西:
paginatedBusinesses.Items.AddRange(businesses.Select(i => i.LastAccessed));
但是它不起作用,我怎样才能把它放在对应的对象中(具有相同 id 的对象),我也尝试了 foreach 但不知道该怎么做。有任何想法吗?谢谢!
【问题讨论】:
-
.Select(i => i.<T>)will produce anEnumerable<T>所以看起来您正试图将long的集合放入Business的集合中。您在这里的预期结果是什么?您想要long的列表还是企业列表? -
嗨@DekuDesu 我想要一个企业列表(两个列表都来自同一个对象)所以我需要将 LastAccessed 值从一个列表复制到另一个列表中(这个值为空)
-
以前我像这样转换了 paginatedBusines: var paginatedBusinesses = results.ConvertItems
((i) => i.ToDomainEntity()); -
这里的事情是我必须搜索列表中每个项目的 Id 才能将 LastAccessed 传递给与之对应的项目。
标签: c# .net list linq pagination