public async Task Apply(ProjectReply projectReply) { throw new NotImplementedException(); foreach (var allrpgUser in projectReply.users) { await ImportUser(allrpgUser); } CleanProject(); ImportLocations(projectReply.locations); ImportCharacters(projectReply); ImportClaims(projectReply.roles); ImportComments(projectReply.comments); _operationLog.Info("SUCCESS"); await SaveToDatabase(); _operationLog.Info("DATA_SAVED"); ReorderLocations(Project.RootGroup); Project.MarkTreeModified(); await SaveToDatabase(); _operationLog.Info("DATA_REORDED_SAVED"); }
private void ImportCharacters(ProjectReply projectReply) { foreach (var vacancy in projectReply.vacancies.OrderByDescending(l => l.code)) // Poor man attempt to keep order { if (vacancy.kolvo == 1) { ImportCharacter(vacancy); } else { ImportLocation(vacancy); } } Project.Characters.AddLinkList(Characters.Values); UnitOfWork.GetDbSet <Character>().AddRange(Characters.Values); Project.CharacterGroups.AddLinkList(LocationsFromVacancies.Values); UnitOfWork.GetDbSet <CharacterGroup>().AddRange(LocationsFromVacancies.Values); }