Пример #1
0
        public void Update(RoleDto item)
        {
            using (var ctx = ObjectContextManager <PTrackerEntities> .GetManager("PTrackerEntities"))
            {
                var data = (from r in ctx.ObjectContext.Roles
                            where r.Id == item.Id
                            select r).FirstOrDefault();
                if (data == null)
                {
                    throw new DataNotFoundException("Role");
                }
                if (!data.LastChanged.Matches(item.LastChanged))
                {
                    throw new ConcurrencyException("Role");
                }

                data.Name = item.Name;
                var count = ctx.ObjectContext.SaveChanges();
                if (count == 0)
                {
                    throw new UpdateFailureException("Role");
                }
                item.LastChanged = data.LastChanged;
            }
        }
Пример #2
0
 public void WorksForObjectContext()
 {
     using (var manager = ObjectContextManager <TestObjectContextContainer> .GetManager())
     {
         Assert.IsNotNull(manager);
     }
 }
Пример #3
0
            public void MultipleLevelScoping()
            {
                ObjectContextManager <TestObjectContextContainer> manager = null;

                using (manager = ObjectContextManager <TestObjectContextContainer> .GetManager())
                {
                    Assert.AreEqual(1, manager.RefCount);

                    using (ObjectContextManager <TestObjectContextContainer> .GetManager())
                    {
                        Assert.AreEqual(2, manager.RefCount);

                        using (ObjectContextManager <TestObjectContextContainer> .GetManager())
                        {
                            Assert.AreEqual(3, manager.RefCount);
                        }

                        Assert.AreEqual(2, manager.RefCount);
                    }

                    Assert.AreEqual(1, manager.RefCount);
                }

                Assert.AreEqual(0, manager.RefCount);
            }
Пример #4
0
        private void Child_Insert(Company company, Companies entityCompany)
        {
            using (var manager =
                       ObjectContextManager <RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
            {
                LoadProperty(CompanyIdProperty, company.CompanyId);
                RolodexEF.Ranks newRank = GetRank(ReadProperty(RankIdProperty));

                var newContact = new CompanyContacts();
                newContact.BaseSalary = ReadProperty(BaseSalaryProperty);
                var birthday = ReadProperty(BirthdayProperty);
                if (!birthday.IsEmpty)
                {
                    newContact.Birthday = birthday.Date;
                }
                newContact.Companies = entityCompany;
                newContact.FirstName = ReadProperty(FirstNameProperty);
                newContact.LastName  = ReadProperty(LastNameProperty);
                newContact.Ranks     = newRank;

                LoadProperty(InitialRankIdProperty, ReadProperty(RankIdProperty));
                if (ReadProperty(CompanyContactIdProperty) == 0)
                {
                    newContact.PropertyChanged += entityContact_PropertyChanged;
                }

                DataPortal.UpdateChild(ReadProperty(ContactsPhonesProperty), this, newContact);
            }
        }
Пример #5
0
        private void Child_Update(Company company, Companies entityCompany)
        {
            using (var manager =
                       ObjectContextManager <RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
            {
                RolodexEF.Ranks newRank = GetRank(ReadProperty(RankIdProperty));
                RolodexEF.Ranks oldRank = GetRank(ReadProperty(InitialRankIdProperty));

                var newContact = new CompanyContacts();
                newContact.CompanyContactId = ReadProperty(CompanyContactIdProperty);
                newContact.EntityKey        = new System.Data.EntityKey("RolodexEntities.CompanyContacts", "CompanyContactId",
                                                                        ReadProperty(CompanyContactIdProperty));

                manager.ObjectContext.Attach(newContact);
                entityCompany.CompanyContacts.Attach(newContact);
                oldRank.CompanyContacts.Attach(newContact);
                newContact.Ranks = newRank;

                newContact.BaseSalary = ReadProperty(BaseSalaryProperty);
                var birthday = ReadProperty(BirthdayProperty);
                if (!birthday.IsEmpty)
                {
                    newContact.Birthday = birthday.Date;
                }
                else
                {
                    newContact.Birthday = null;
                }

                newContact.FirstName = ReadProperty(FirstNameProperty);
                newContact.LastName  = ReadProperty(LastNameProperty);

                DataPortal.UpdateChild(ReadProperty(ContactsPhonesProperty), this, newContact);
            }
        }
Пример #6
0
        private RolodexEF.Ranks GetRank(int rankID)
        {
            using (var manager =
                       ObjectContextManager <RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
            {
                RolodexEF.Ranks rank;

                System.Data.EntityKey rankKey = new System.Data.EntityKey("RolodexEntities.Ranks", "RankId", rankID);

                System.Data.Objects.ObjectStateEntry entry;
                if (!manager.ObjectContext.ObjectStateManager.TryGetObjectStateEntry(rankKey, out entry))
                {
                    rank           = new RolodexEF.Ranks();
                    rank.RankId    = rankID;
                    rank.EntityKey = rankKey;
                    manager.ObjectContext.Attach(rank);
                }
                else
                {
                    rank = entry.Entity as RolodexEF.Ranks;
                }

                return(rank);
            }
        }
Пример #7
0
 public void Update(AssignmentDto item)
 {
     using (var ctx = ObjectContextManager <PTrackerEntities> .GetManager("PTrackerEntities"))
     {
         var data = (from r in ctx.ObjectContext.Assignments
                     where r.ProjectId == item.ProjectId && r.ResourceId == item.ResourceId
                     select r).FirstOrDefault();
         if (data == null)
         {
             throw new DataNotFoundException("Assignment");
         }
         if (!data.LastChanged.Matches(item.LastChanged))
         {
             throw new ConcurrencyException("Assignment");
         }
         data.Assigned = item.Assigned;
         data.RoleId   = item.RoleId;
         var count = ctx.ObjectContext.SaveChanges();
         if (count == 0)
         {
             throw new UpdateFailureException("Assignment");
         }
         item.LastChanged = data.LastChanged;
     }
 }
Пример #8
0
        protected override void DataPortal_Insert()
        {
            using (var manager =
                       ObjectContextManager <RolodexEF.RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
            {
                var newCompany = new Companies();
                newCompany.CompanyName = ReadProperty(CompanyNameProperty);
                SmartDate added = ReadProperty(DateAddedProperty);
                if (!added.IsEmpty)
                {
                    newCompany.DateAdded = added.Date;
                }
                DataPortal.UpdateChild(ReadProperty(ContactsProperty), this, newCompany);

                manager.ObjectContext.AddToCompanies(newCompany);
                if (ReadProperty(CompanyIdProperty) == 0)
                {
                    newCompany.PropertyChanged += newCompany_PropertyChanged;
                }

                DataPortal.UpdateChild(ReadProperty(ContactsProperty), this, newCompany);
                manager.ObjectContext.SaveChanges();
                LoadProperty(CompanyIdProperty, newCompany.CompanyId);
            }
        }
Пример #9
0
 public void ConnectionSetting_with_Invalid_DB_Throws_ConfigurationErrorsException_for_EntitiesContextDataContext()
 {
     using (var objectContextManager = ObjectContextManager <DataPortalTestDatabaseEntities> .GetManager(EntityConnectionWithMissingDB, true))
     {
         Assert.IsNotNull(objectContextManager);
         //Throws EntityException
         var table = (from p in objectContextManager.ObjectContext.Table2
                      select p).ToList();
     }
 }
Пример #10
0
 public bool Exists(int id)
 {
     using (var ctx = ObjectContextManager <PTrackerEntities> .GetManager("PTrackerEntities"))
     {
         var result = (from r in ctx.ObjectContext.Projects
                       where r.Id == id
                       select r.Id).Count() > 0;
         return(result);
     }
 }
Пример #11
0
 public List <RoleDto> Fetch()
 {
     using (var ctx = ObjectContextManager <PTrackerEntities> .GetManager("PTrackerEntities"))
     {
         var result = from r in ctx.ObjectContext.Roles
                      select new RoleDto {
             Id = r.Id, Name = r.Name, LastChanged = r.LastChanged
         };
         return(result.ToList());
     }
 }
Пример #12
0
 protected override void DataPortal_Insert()
 {
     using (ObjectContextManager <RolodexEntities> manager = ObjectContextManager <RolodexEF.RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
     {
         RolodexEF.Ranks newRank = new RolodexEF.Ranks();
         newRank.Rank = ReadProperty(RankNameProperty);
         manager.ObjectContext.AddToRanks(newRank);
         manager.ObjectContext.SaveChanges();
         LoadProperty(RankIdProperty, newRank.RankId);
     }
 }
Пример #13
0
 protected void DataPortal_Fetch()
 {
     RaiseListChangedEvents = false;
     using (ObjectContextManager <RolodexEntities> manager = ObjectContextManager <RolodexEF.RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
     {
         foreach (var item in manager.ObjectContext.Ranks)
         {
             Add(Rank.GetRank(item));
         }
     }
     RaiseListChangedEvents = true;
 }
Пример #14
0
        public DashboardDto Fetch()
        {
            var result = new DashboardDto();

            using (var ctx = ObjectContextManager <PTrackerEntities> .GetManager("PTrackerEntities"))
            {
                result.ProjectCount     = ctx.ObjectContext.Projects.Count();
                result.OpenProjectCount = ctx.ObjectContext.Projects.Where(r => r.Ended == null).Count();
                result.ResourceCount    = ctx.ObjectContext.Resources.Count();
            }
            return(result);
        }
Пример #15
0
        public void Table2_retreived_through_LingToEntitiesDataContext_has_records()
        {
            using (var objectContextManager = ObjectContextManager <DataPortalTestDatabaseEntities> .GetManager("DataPortalTestDatabaseEntities", true))
            {
                Assert.IsNotNull(objectContextManager);

                var query = from p in objectContextManager.ObjectContext.Table2
                            select p;

                Assert.IsTrue(query.ToList().Count > 0, "Data in table is missing");
            }
        }
Пример #16
0
        protected override void DataPortal_Update()
        {
            using (ObjectContextManager <RolodexEntities> manager = ObjectContextManager <RolodexEF.RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
            {
                RolodexEF.Ranks newRank = new RolodexEF.Ranks();
                newRank.RankId    = ReadProperty(RankIdProperty);
                newRank.EntityKey = new System.Data.EntityKey("RolodexEntities.Ranks", "RankId", newRank.RankId);
                manager.ObjectContext.Attach(newRank);

                newRank.Rank = ReadProperty(RankNameProperty);
                manager.ObjectContext.SaveChanges();
            }
        }
Пример #17
0
 public void Insert(RoleDto item)
 {
     using (var ctx = ObjectContextManager <PTrackerEntities> .GetManager("PTrackerEntities"))
     {
         var newItem = new Role
         {
             Name = item.Name
         };
         ctx.ObjectContext.AddToRoles(newItem);
         ctx.ObjectContext.SaveChanges();
         item.Id          = newItem.Id;
         item.LastChanged = newItem.LastChanged;
     }
 }
Пример #18
0
 public void Delete(int projectId, int resourceId)
 {
     using (var ctx = ObjectContextManager <PTrackerEntities> .GetManager("PTrackerEntities"))
     {
         var data = (from r in ctx.ObjectContext.Assignments
                     where r.ProjectId == projectId && r.ResourceId == resourceId
                     select r).FirstOrDefault();
         if (data != null)
         {
             ctx.ObjectContext.Assignments.DeleteObject(data);
             ctx.ObjectContext.SaveChanges();
         }
     }
 }
Пример #19
0
        private void Child_Update(CompanyContact companyContact, CompanyContacts entityContact)
        {
            using (ObjectContextManager <RolodexEntities> manager = ObjectContextManager <RolodexEF.RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
            {
                CompanyContactPhones newContactPhone = new CompanyContactPhones();
                newContactPhone.CompanyContactPhoneId = ReadProperty(CompanyContactPhoneIdProperty);
                newContactPhone.EntityKey             = new System.Data.EntityKey("RolodexEntities.CompanyContactPhones", "CompanyContactPhoneId", ReadProperty(CompanyContactPhoneIdProperty));
                manager.ObjectContext.Attach(newContactPhone);
                entityContact.CompanyContactPhones.Attach(newContactPhone);

                newContactPhone.FaxNumber   = ReadProperty(FaxNumberProperty);
                newContactPhone.PhoneNumber = ReadProperty(PhoneNumberProperty);
            }
        }
Пример #20
0
 private void DataPortal_Fetch()
 {
     using (ObjectContextManager <RolodexEntities> manager = ObjectContextManager <RolodexEF.RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
     {
         RaiseListChangedEvents = false;
         IsReadOnly             = false;
         foreach (var item in manager.ObjectContext.Ranks)
         {
             Add(new Ranks.NameValuePair(item.RankId, item.Rank));
         }
         IsReadOnly             = true;
         RaiseListChangedEvents = true;
     }
 }
Пример #21
0
 public void Delete(int id)
 {
     using (var ctx = ObjectContextManager <PTrackerEntities> .GetManager("PTrackerEntities"))
     {
         var data = (from r in ctx.ObjectContext.Roles
                     where r.Id == id
                     select r).FirstOrDefault();
         if (data != null)
         {
             ctx.ObjectContext.Roles.DeleteObject(data);
             ctx.ObjectContext.SaveChanges();
         }
     }
 }
Пример #22
0
 protected override void DataPortal_DeleteSelf()
 {
     if (!this.IsNew)
     {
         using (ObjectContextManager <RolodexEntities> manager = ObjectContextManager <RolodexEF.RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
         {
             RolodexEF.Ranks deleted = new RolodexEF.Ranks();
             deleted.RankId    = ReadProperty(RankIdProperty);
             deleted.EntityKey = new System.Data.EntityKey("RolodexEntities.Ranks", "RankId", deleted.RankId);
             manager.ObjectContext.Attach(deleted);
             manager.ObjectContext.DeleteObject(deleted);
             manager.ObjectContext.SaveChanges();
         }
     }
 }
Пример #23
0
 private void Child_DeleteSelf(CompanyContact companyContact, CompanyContacts entityContact)
 {
     if (!this.IsNew)
     {
         using (ObjectContextManager <RolodexEntities> manager = ObjectContextManager <RolodexEF.RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
         {
             CompanyContactPhones deleted = new CompanyContactPhones();
             deleted.CompanyContactPhoneId = ReadProperty(CompanyContactPhoneIdProperty);
             deleted.EntityKey             = new System.Data.EntityKey("RolodexEntities.CompanyContactPhones", "CompanyContactPhoneId", deleted.CompanyContactPhoneId);
             manager.ObjectContext.Attach(deleted);
             entityContact.CompanyContactPhones.Attach(deleted);
             manager.ObjectContext.DeleteObject(deleted);
         }
     }
 }
Пример #24
0
 protected override void DataPortal_DeleteSelf()
 {
     if (!IsNew)
     {
         using (ObjectContextManager <RolodexEntities> manager = ObjectContextManager <RolodexEF.RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
         {
             Companies deleted = new Companies();
             deleted.CompanyId = CompanyId;
             deleted.EntityKey = new System.Data.EntityKey("RolodexEntities.Companies", "CompanyId", CompanyId);
             manager.ObjectContext.Attach(deleted);
             manager.ObjectContext.DeleteObject(deleted);
             manager.ObjectContext.SaveChanges();
         }
     }
 }
Пример #25
0
        private void DataPortal_Fetch(LoginCriteria criteria)
        {
            if (criteria.IsGuest)
            {
                this.FetchGuest();
            }
            else
            {
                using (var ctx = ObjectContextManager <ApplicationEntities>
                                 .GetManager(Database.SecurityConnection, false))
                {
                    IQueryable <Data.User> query = ctx.ObjectContext.Users;

                    query = query.Where(row => row.Name == criteria.Name ||
                                        row.Email == criteria.Name);

                    var data = query.Select(row => row);

                    if (data.Count() > 0)
                    {
                        var user = data.Single();

                        if (!string.IsNullOrEmpty(criteria.Password))
                        {
                            if (PasswordHelper.ComparePasswords(
                                    user.Salt,
                                    criteria.Password,
                                    user.Password))
                            {
                                this.Fetch(user);
                            }
                            else
                            {
                                throw new SecurityException("User name or password is invalid.");
                            }
                        }
                        else
                        {
                            this.Fetch(user);
                        }
                    }
                    else
                    {
                        throw new SecurityException("User name or password is invalid.");
                    }
                }
            }
        }
Пример #26
0
 private void DataPortal_Fetch()
 {
     RaiseListChangedEvents = false;
     //IsReadOnly = false;
     using (ObjectContextManager <RolodexEntities> manager = ObjectContextManager <RolodexEF.RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
     {
         foreach (var item in (from oneCompany in manager.ObjectContext.Companies
                               orderby oneCompany.CompanyName
                               select new { oneCompany.CompanyId, oneCompany.CompanyName }))
         {
             Add(ReadOnlyCompany.GetReadOnlyCompany(item.CompanyId, item.CompanyName));
         }
     }
     //IsReadOnly = true;
     RaiseListChangedEvents = true;
 }
Пример #27
0
 public void Insert(AssignmentDto item)
 {
     using (var ctx = ObjectContextManager <PTrackerEntities> .GetManager("PTrackerEntities"))
     {
         var newItem = new Assignment
         {
             ProjectId  = item.ProjectId,
             ResourceId = item.ResourceId,
             Assigned   = item.Assigned,
             RoleId     = item.RoleId
         };
         ctx.ObjectContext.AddToAssignments(newItem);
         ctx.ObjectContext.SaveChanges();
         item.LastChanged = newItem.LastChanged;
     }
 }
Пример #28
0
 public RoleDto Fetch(int id)
 {
     using (var ctx = ObjectContextManager <PTrackerEntities> .GetManager("PTrackerEntities"))
     {
         var result = (from r in ctx.ObjectContext.Roles
                       where r.Id == id
                       select new RoleDto {
             Id = r.Id, Name = r.Name, LastChanged = r.LastChanged
         }).FirstOrDefault();
         if (result == null)
         {
             throw new DataNotFoundException("Role");
         }
         return(result);
     }
 }
Пример #29
0
 private void Child_Insert(CompanyContact companyContact, CompanyContacts entityContact)
 {
     using (ObjectContextManager <RolodexEntities> manager = ObjectContextManager <RolodexEF.RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
     {
         LoadProperty(CompanyContactIdProperty, companyContact.CompanyContactId);
         CompanyContactPhones newContactPhone = new CompanyContactPhones();
         newContactPhone.FaxNumber       = ReadProperty(FaxNumberProperty);
         newContactPhone.PhoneNumber     = ReadProperty(PhoneNumberProperty);
         newContactPhone.CompanyContacts = entityContact;
         manager.ObjectContext.AddToCompanyContactPhones(newContactPhone);
         newContactPhone.PropertyChanged += newContactPhone_PropertyChanged;
         if (ReadProperty(CompanyContactIdProperty) == 0)
         {
             entityContact.PropertyChanged += entityContact_PropertyChanged;
         }
     }
 }
Пример #30
0
 private void Child_DeleteSelf(Company company, Companies entityCompany)
 {
     if (!IsNew)
     {
         using (var manager =
                    ObjectContextManager <RolodexEntities> .GetManager(DataConnection.EFConnectionName, true))
         {
             var deleted = new CompanyContacts();
             deleted.CompanyContactId = ReadProperty(CompanyContactIdProperty);
             deleted.EntityKey        = new System.Data.EntityKey("RolodexEntities.CompanyContacts", "CompanyContactId",
                                                                  deleted.CompanyContactId);
             manager.ObjectContext.Attach(deleted);
             entityCompany.CompanyContacts.Attach(deleted);
             manager.ObjectContext.DeleteObject(deleted);
         }
     }
 }