обновить атрибут в списке объектов, используя другой список, используя Lambda C # - PullRequest
0 голосов
/ 26 марта 2019

Я хотел бы обновить атрибут в списке объектов.Этот атрибут происходит из списка 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)

Могу ли я получить решение для этого, пожалуйста?Я старался изо всех сил, делая это, но не мог решить. Спасибо

1 Ответ

1 голос
/ 26 марта 2019

для построения списка:

var listOfUsers= _dbContext.Users.Where(u => MyListOfObject.Select(c=>c.ProfesionalId).ToList().Contains(u.id)).ToList(); 

но в целом вы должны сделать следующее:

MyListOfObject.ForEach(l => l.PropertyToUpdate= _dbContext.Users.First(x => x.id == l.ProfessionalId).PropertyYouGetDataFrom);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...