public void Update(DalProfile entity)
        {
            var profile = entity.ToProfile();

            var localUser = _context.Set <Profile>().Local.FirstOrDefault(u => u.Id == profile.Id);

            if (localUser != null)
            {
                _context.Entry(localUser).CurrentValues.SetValues(profile);
            }
            else
            {
                _context.Set <Profile>().Attach(profile);
                _context.Entry(profile).State = EntityState.Modified;
            }
        }
        public void Create(DalProfile dalProfile)
        {
            var profile = dalProfile.ToProfile();

            /*
             * var messages = Messages.Select(m => m).Where(m => m.ProfileFrom.Id == dalProfile.Id);
             * var photos = Profiles.FirstOrDefault(p => p.Id == dalProfile.Id).Photos;
             * foreach (var message in messages)
             * {
             *  profile.Messages.Add(message);
             * }
             * foreach (var photo in photos)
             * {
             *  profile.Photos.Add(photo);
             * }
             */
            Profiles.Add(profile);
        }
        public void AddAreaToProfile(DalProfile dalProfile, DalArea dalArea)
        {
            var profile = dalProfile.ToProfile();
            var area    = dalArea.ToArea();

            if (profile.Areas.Contains(area))
            {
                return;
            }
            profile = _context.Set <Profile>().Local.FirstOrDefault(p => p.Id == profile.Id) ?? profile;
            area    = _context.Set <Area>().Local.FirstOrDefault(r => r.Id == area.Id) ?? area;

            _context.Set <Profile>().Attach(profile);
            _context.Set <Area>().Attach(area);

            _context.Entry(profile).Collection(x => x.Areas).Load();
            profile.Areas.Add(area);
        }
 public void Create(DalProfile e)
 {
     _context.Set <Profile>().Add(e.ToProfile());
 }