public override void UpdateDatabaseAfterUpdateSchema() { var session = ((XPObjectSpace)ObjectSpace).Session; if (new QueryModelDifferenceObject(session).GetActiveModelDifference(ModelCombine, ApplicationHelper.Instance.Application) == null) { new ModelDifferenceObject(session).InitializeMembers(ModelCombine, ApplicationHelper.Instance.Application); var role = (XpandPermissionPolicyRole)ObjectSpace.GetRole(ModelCombine); role.CanEditModel = true; var permissionData = ObjectSpace.CreateObject <ModelCombineOperationPermissionPolicyData>(); permissionData.Difference = ModelCombine; role.Permissions.Add(permissionData); var user = ObjectSpace.GetUser(ModelCombine, "", role); var collection = (XPBaseCollection)((XafMemberInfo)XafTypesInfo.Instance.FindTypeInfo(role.GetType()).FindMember("Users")).GetValue(role); collection.BaseAdd(user); ObjectSpace.CommitChanges(); } var modelDifferenceObjects = new XpandXPCollection <ModelDifferenceObject>(session, o => o.PersistentApplication.Name == "FeatureCenter"); foreach (var modelDifferenceObject in modelDifferenceObjects) { modelDifferenceObject.PersistentApplication.Name = Path.GetFileNameWithoutExtension(modelDifferenceObject.PersistentApplication.ExecutableName); } ObjectSpace.CommitChanges(); }
public override void UpdateDatabaseAfterUpdateSchema() { var session = ((ObjectSpace)ObjectSpace).Session; if (new QueryModelDifferenceObject(session).GetActiveModelDifference(ModelCombine, FeatureCenterModule.Application) == null) { new ModelDifferenceObject(session).InitializeMembers(ModelCombine, FeatureCenterModule.Application); ICustomizableRole role = Updater.EnsureRoleExists(ModelCombine, customizableRole => GetPermissions(customizableRole, Updater)); IUserWithRoles user = Updater.EnsureUserExists(ModelCombine, ModelCombine, role); role.AddPermission(new ModelCombinePermission(ApplicationModelCombineModifier.Allow) { Difference = ModelCombine }); role.Users.Add(user); ObjectSpace.CommitChanges(); } var modelDifferenceObjects = new XpandXPCollection<ModelDifferenceObject>(session, o => o.PersistentApplication.Name == "FeatureCenter"); foreach (var modelDifferenceObject in modelDifferenceObjects) { modelDifferenceObject.PersistentApplication.Name = Path.GetFileNameWithoutExtension(modelDifferenceObject.PersistentApplication.ExecutableName); } ObjectSpace.CommitChanges(); }
public override void UpdateDatabaseAfterUpdateSchema() { var session = ((XPObjectSpace)ObjectSpace).Session; if (new QueryModelDifferenceObject(session).GetActiveModelDifference(ModelCombine, FeatureCenterModule.Application) == null) { new ModelDifferenceObject(session).InitializeMembers(ModelCombine, FeatureCenterModule.Application); var role = Updater.EnsureRoleExists(ModelCombine, customizableRole => GetPermissions(customizableRole, Updater)); var user = Updater.EnsureUserExists(ModelCombine, ModelCombine, role); var collection = (XPBaseCollection)((XafMemberInfo)XafTypesInfo.Instance.FindTypeInfo(role.GetType()).FindMember("Users")).GetValue(role); collection.BaseAdd(user); ObjectSpace.CommitChanges(); } var modelDifferenceObjects = new XpandXPCollection<ModelDifferenceObject>(session, o => o.PersistentApplication.Name == "FeatureCenter"); foreach (var modelDifferenceObject in modelDifferenceObjects) { modelDifferenceObject.PersistentApplication.Name = Path.GetFileNameWithoutExtension(modelDifferenceObject.PersistentApplication.ExecutableName); } ObjectSpace.CommitChanges(); }
public override void UpdateDatabaseAfterUpdateSchema() { var session = ((XPObjectSpace)ObjectSpace).Session; if (new QueryModelDifferenceObject(session).GetActiveModelDifference(ModelCombine, FeatureCenterModule.Application) == null) { new ModelDifferenceObject(session).InitializeMembers(ModelCombine, FeatureCenterModule.Application); var role = Updater.EnsureRoleExists(ModelCombine, customizableRole => GetPermissions(customizableRole, Updater)); var user = Updater.EnsureUserExists(ModelCombine, ModelCombine, role); var collection = ((XPBaseCollection)XafTypesInfo.Instance.FindTypeInfo(role.GetType()).FindMember("Users")); collection.BaseAdd(user); ObjectSpace.CommitChanges(); } var modelDifferenceObjects = new XpandXPCollection <ModelDifferenceObject>(session, o => o.PersistentApplication.Name == "FeatureCenter"); foreach (var modelDifferenceObject in modelDifferenceObjects) { modelDifferenceObject.PersistentApplication.Name = Path.GetFileNameWithoutExtension(modelDifferenceObject.PersistentApplication.ExecutableName); } ObjectSpace.CommitChanges(); }
public override void UpdateDatabaseAfterUpdateSchema() { var session = ((XPObjectSpace)ObjectSpace).Session; if (new QueryModelDifferenceObject(session).GetActiveModelDifference(ModelCombine, ApplicationHelper.Instance.Application) == null) { new ModelDifferenceObject(session).InitializeMembers(ModelCombine, ApplicationHelper.Instance.Application); var role = (XpandRole)ObjectSpace.GetRole(ModelCombine); role.CanEditModel = true; var permissionData = ObjectSpace.CreateObject<ModelCombineOperationPermissionData>(); permissionData.Difference = ModelCombine; role.Permissions.Add(permissionData); var user = ObjectSpace.GetUser(ModelCombine, "", role); var collection = (XPBaseCollection)((XafMemberInfo)XafTypesInfo.Instance.FindTypeInfo(role.GetType()).FindMember("Users")).GetValue(role); collection.BaseAdd(user); ObjectSpace.CommitChanges(); } var modelDifferenceObjects = new XpandXPCollection<ModelDifferenceObject>(session, o => o.PersistentApplication.Name == "FeatureCenter"); foreach (var modelDifferenceObject in modelDifferenceObjects) { modelDifferenceObject.PersistentApplication.Name = Path.GetFileNameWithoutExtension(modelDifferenceObject.PersistentApplication.ExecutableName); } ObjectSpace.CommitChanges(); }