Ejemplo n.º 1
0
        private void UpdateUserSkills(BllProgrammer balProgrammer)
        {
            var dbUserSkills = userSkillRepo.Get(x => x.User.Id == balProgrammer.Id);

            foreach (var skill in balProgrammer.Skills)
            {
                DalUserSkill dalUserSkill = new DalUserSkill
                {
                    User  = (DalProgrammer)balProgrammer.ToDal(),
                    Skill = skill.Key.ToDal(),
                    Level = skill.Value
                };

                if (dbUserSkills.Any(x => x.Skill.Id == skill.Key.Id))
                {
                    userSkillRepo.Update(dalUserSkill);
                }
                else
                {
                    userSkillRepo.Create(dalUserSkill);
                }
            }

            foreach (var skill in dbUserSkills)
            {
                if (!balProgrammer.Skills.Any(x => x.Key.Id == skill.Skill.Id))
                {
                    userSkillRepo.Remove(skill);
                }
            }
        }
Ejemplo n.º 2
0
 public static BllUserSkill ToBal(this DalUserSkill skill)
 {
     return(new BllUserSkill
     {
         Skill = skill.Skill.ToBal(),
         User = (BllProgrammer)skill.User.ToBal(),
         Level = skill.Level
     });
 }