예제 #1
0
 public override void Setup(XafApplication application)
 {
     if (RuntimeMode && XafTypesInfo.PersistentEntityStore == null)
     {
         XafTypesInfo.SetPersistentEntityStore(new XpandXpoTypeInfoSource((TypesInfo)application.TypesInfo));
     }
     base.Setup(application);
     if (RuntimeMode)
     {
         application.SetupComplete +=
             (sender, args) => RuntimeMemberBuilder.CreateRuntimeMembers(application.Model);
         application.CustomProcessShortcut        += ApplicationOnCustomProcessShortcut;
         application.ListViewCreating             += ApplicationOnListViewCreating;
         application.DetailViewCreating           += ApplicationOnDetailViewCreating;
         application.CreateCustomCollectionSource += LinqCollectionSourceHelper.CreateCustomCollectionSource;
         application.LoggedOn += (sender, args) => RuntimeMemberBuilder.CreateRuntimeMembers(application.Model);
     }
 }
예제 #2
0
        public override void Setup(XafApplication application)
        {
            lock (XafTypesInfo.Instance) {
                if (RuntimeMode && XafTypesInfo.PersistentEntityStore == null)
                {
                    XafTypesInfo.SetPersistentEntityStore(new XpandXpoTypeInfoSource((TypesInfo)application.TypesInfo));
                }
            }
            base.Setup(application);
            CheckApplicationTypes();
            if (RuntimeMode)
            {
                ApplicationHelper.Instance.Initialize(application);
                var helper = new ConnectionStringHelper();
                helper.Attach(this);
                var generatorHelper = new SequenceGeneratorHelper();
                generatorHelper.Attach(this);
                helper.ConnectionStringUpdated += (sender, args) => generatorHelper.InitializeSequenceGenerator();
            }

            if (Executed("Setup"))
            {
                return;
            }
            if (ManifestModuleName == null)
            {
                ManifestModuleName = application.GetType().Assembly.ManifestModule.Name;
            }
            application.CreateCustomUserModelDifferenceStore += OnCreateCustomUserModelDifferenceStore;
            application.SetupComplete += ApplicationOnSetupComplete;
            application.SettingUp     += ApplicationOnSettingUp;
            application.CreateCustomCollectionSource += ApplicationOnCreateCustomCollectionSource;
            if (RuntimeMode)
            {
                application.LoggedOn += (sender, args) => RuntimeMemberBuilder.CreateRuntimeMembers(application.Model);
            }
        }