使用 Lambda C# 使用另一个列表更新对象列表中的属性

我想更新对象列表中的属性。该属性来自 aspnetUsers 列表


这是对象


Object

{

  public Guid Id { get; set; }

  public string profesionalId{ get; set; }

   public string attributeToUpdate { get; set; }

}

我有这段代码不起作用


List<Object> MyListOfObject=new List<Object>();

// do some queries to populate the list

// more things here...

//my first problem comes here, can not get the list of users

var listOfUsers=  _dbContext.Users.Where(u => MyListOfObject.Any(id => id.ProfesionalId == u.Id)).ToList();

如果上面的代码有效,我想做一个


MyListOfObject.ForEach(

 //here replace the MyListOfObject.attributeToUpdate 

).where (MyListOfObject.profesionalId==listOfUsers.Id)

请问我可以得到解决方案吗?我尽力做到这一点,但无法解决。谢谢


慕斯709654
浏览 170回答 1
1回答

GCT1015

构建列表:var&nbsp;listOfUsers=&nbsp;_dbContext.Users.Where(u&nbsp;=>&nbsp;MyListOfObject.Select(c=>c.ProfesionalId).ToList().Contains(u.id)).ToList();但总的来说,您应该可以这样做:MyListOfObject.ForEach(l&nbsp;=>&nbsp;l.PropertyToUpdate=&nbsp;_dbContext.Users.First(x&nbsp;=>&nbsp;x.id&nbsp;==&nbsp;l.ProfessionalId).PropertyYouGetDataFrom);
打开App,查看更多内容
随时随地看视频慕课网APP