在 C# 中将列表中的一项值复制到另一项中
Copy value of one item from a list into another in c#
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 列表的项目转换为业务 class:
var paginatedBusinesses = results.ConvertItems<Business>((i) => i.ToDomainEntity());
我需要将 businesses 列表中的 LastAccessed 值复制到 paginatedBusinesses.Items. 中搜索 ID(两个列表具有相同值的 id 但在第一个列表中我们有 LastAccessed 值,在最后一个列表中我们没有它)。我该怎么做?我试过类似的东西:
paginatedBusinesses.Items.AddRange(businesses.Select(i => i.LastAccessed));
但它不起作用,我如何将它放在对应的对象(具有相同 ID 的对象)中,我也尝试使用 foreach 但不知道该怎么做。有任何想法吗?谢谢!
如果我理解正确:pagenatedBusinesses.Items
和 businesses
列表都包含 Business
个具有相同 ID 的对象。
问题: 如何将 LastAccessed
值从 businesses
列表中的项目复制到 pagenatedBusinesses.Items
列表具有相同的 Id
?
如果这是正确的,那么下面的代码会将 businesses
列表中 Business
对象的 LastAccessed
值复制到具有相同 Business
对象的 Business
对象中。 =17=] 在 pagenatedBusinesses.Items
列表中:
paginatedBusinesses.Items
.Join(
businesses,
p => p.Id, b => b.Id,
(p, b) => new {PagenatedBusiness = p, b.LastAccessed})
.ToList()
.ForEach(i => i.PagenatedBusiness.LastAccessed = i.LastAccessed);
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 列表的项目转换为业务 class:
var paginatedBusinesses = results.ConvertItems<Business>((i) => i.ToDomainEntity());
我需要将 businesses 列表中的 LastAccessed 值复制到 paginatedBusinesses.Items. 中搜索 ID(两个列表具有相同值的 id 但在第一个列表中我们有 LastAccessed 值,在最后一个列表中我们没有它)。我该怎么做?我试过类似的东西:
paginatedBusinesses.Items.AddRange(businesses.Select(i => i.LastAccessed));
但它不起作用,我如何将它放在对应的对象(具有相同 ID 的对象)中,我也尝试使用 foreach 但不知道该怎么做。有任何想法吗?谢谢!
如果我理解正确:pagenatedBusinesses.Items
和 businesses
列表都包含 Business
个具有相同 ID 的对象。
问题: 如何将 LastAccessed
值从 businesses
列表中的项目复制到 pagenatedBusinesses.Items
列表具有相同的 Id
?
如果这是正确的,那么下面的代码会将 businesses
列表中 Business
对象的 LastAccessed
值复制到具有相同 Business
对象的 Business
对象中。 =17=] 在 pagenatedBusinesses.Items
列表中:
paginatedBusinesses.Items
.Join(
businesses,
p => p.Id, b => b.Id,
(p, b) => new {PagenatedBusiness = p, b.LastAccessed})
.ToList()
.ForEach(i => i.PagenatedBusiness.LastAccessed = i.LastAccessed);