Wpis z mikrobloga

Mam do zsynchronizowania jakieś 25k rekordów w bazie. Większość unikalna, ale to inna kwestia.
Każdy rekord wyszukuję w AD i na podstawie tego, co mi wyszukanie w AD zwróci zapisuję wartości do bazy albo zostawiam (w przypadku null bądź takiej, jaka mi nie pasuje - zostawiam starą) - więc przyrównanie USERBAZA = USERAD odpada.

Aktualnie mam stworzoną pętlę przez wszystkie rekordy w bazie i po zakończeniu każdego rekordu wykonuję:
1. Entry(USERBAZA).State = EntityState.Modified;
2. db.SaveChanges();

Czy mogę db.savechanges wykonać po całej pętli foreach (sprawdzając aby po wywaleniu się jakiegoś z rekordów synchronizacja szła dalej, więc w końcu do db.savechanges dojdzie)?

Jest jakiś inny sprytniejszy sposób aby wykonać powyższą operację?

#csharp #linq #programowanie
  • 3