protected internal IQueryable<ModelDifferenceObject> GetActiveDifferenceObjects(){
     IQueryable<UserModelDifferenceObject> modelDifferenceObjects = new QueryUserModelDifferenceObject(ObjectSpace.Session).GetActiveModelDifferences(
         Application.GetType().FullName);
     List<RoleModelDifferenceObject> roleAspectObjects = new QueryRoleModelDifferenceObject(ObjectSpace.Session).GetActiveModelDifferences(
         Application.GetType().FullName).ToList();
     IEnumerable<ModelDifferenceObject> roleAspectObjectsConcat = roleAspectObjects.Cast<ModelDifferenceObject>().Concat(modelDifferenceObjects.Cast<ModelDifferenceObject>());
     return roleAspectObjectsConcat.AsQueryable();
 }
        public override Dictionary GetCombinedModel(bool isSaving)

        {

            List<RoleModelDifferenceObject> roleModelDifferenceObjects = new QueryRoleModelDifferenceObject(Session).GetActiveModelDifferences(
                PersistentApplication.UniqueName).ToList();

            var modelDifferenceObjects = new List<ModelDifferenceObject>();
            var modelDifferenceObject = new QueryModelDifferenceObject(Session).GetActiveModelDifference(PersistentApplication.UniqueName);
            modelDifferenceObjects.Add(modelDifferenceObject);
            IEnumerable<ModelDifferenceObject> differenceObjects = roleModelDifferenceObjects.Cast<ModelDifferenceObject>().Concat(modelDifferenceObjects);

            return GetCombinedModel(differenceObjects,isSaving);
        }