Esempio n. 1
0
        protected void Application_Start(object sender, EventArgs e)
        {
            log4net.Config.XmlConfigurator.Configure();

            Microsoft.Practices.ServiceLocation.ServiceLocator.SetLocatorProvider(new Microsoft.Practices.ServiceLocation.ServiceLocatorProvider(
                                                                                      delegate()
            {
                var p = Feng.DefaultServiceProvider.Instance;
                p.EnableLog();
                p.EnableNHibernate();
                p.EnableScript();

                p.SetDefaultService <ICache>(new HashtableCache());
                IDataBuffers bufs = new DataBuffers();
                bufs.AddDataBuffer(new Cache());
                bufs.AddDataBuffer(DBDataBuffer.Instance);
                p.SetDefaultService <IDataBuffers>(bufs);

                p.SetDefaultService <IApplicationDirectory>(new Feng.Windows.WindowsDirectory());
                p.SetDefaultService <IExceptionProcess>(new LoggerExceptionProcess());
                p.SetDefaultService <IManagerFactory>(new Feng.Windows.Utils.WinFormManagerFactory());
                return(p);
            }));

            IDataBuffers db = ServiceProvider.GetService <IDataBuffers>();

            if (db != null)
            {
                db.LoadData();
            }

            //System.Web.Mvc.MvcHandler.DisableMvcResponseHeader = true;
        }
        /// <summary>
        /// 初始化程序(设置ServiceLocator,读取IDataBuffer)
        /// </summary>
        public static void InitProgram()
        {
            if (!m_init)
            {
                m_init = true;

                Feng.Utils.XceedUtility.SetXceedLicense();
                log4net.Config.XmlConfigurator.Configure();
                //HibernatingRhinos.NHibernate.Profiler.Appender.NHibernateProfiler.Initialize();

                //if (Microsoft.Practices.ServiceLocation.ServiceLocator.Current == null) // throw null
                {
                    if (!SystemConfiguration.LiteMode)
                    {
                        SetSpringServiceLocator();
                    }

                    ServiceProvider.SetDefaultService <ILogger>(new log4netLogger());
                    ServiceProvider.SetDefaultService <IExceptionProcess>(new LoggerExceptionProcess());

                    ServiceProvider.SetDefaultService <Feng.NH.ISessionFactoryManager>(new Feng.NH.NHibernateSessionFactoryManager());
                    ServiceProvider.SetDefaultService <IRepositoryFactory>(new NH.RepositoryFactory());

                    IPersistentCache c = new PersistentHashtableCache();
                    ServiceProvider.SetDefaultService <ICache>(c);
                    ServiceProvider.SetDefaultService <IPersistentCache>(c);

                    Feng.DBDef def = new Feng.DBDef();
                    ServiceProvider.SetDefaultService <IDefinition>(def);

                    IDataBuffer buf = new Feng.DBDataBuffer();
                    ServiceProvider.SetDefaultService <IDataBuffer>(buf);

                    IDataBuffers bufs = new DataBuffers();
                    bufs.AddDataBuffer(new Cache());
                    bufs.AddDataBuffer(buf);
                    bufs.AddDataBuffer(def);
                    ServiceProvider.SetDefaultService <IDataBuffers>(bufs);

                    IEntityScript script = new PythonandEvalutionEngineScript();
                    ServiceProvider.SetDefaultService <IScript>(script);
                    ServiceProvider.SetDefaultService <IEntityScript>(script);

                    ServiceProvider.SetDefaultService <IMessageBox>(new EmptyMessageBox());

                    ServiceProvider.SetDefaultService <IControlCollectionFactory>(new Feng.ControlCollectionFactoryBase());

                    ServiceProvider.SetDefaultService <IManagerFactory>(new Feng.Utils.ManagerFactory());

                    IDataBuffer db = ServiceProvider.GetService <IDataBuffer>();
                    if (db != null)
                    {
                        db.LoadData();
                    }
                }
            }
        }
        /// <summary>
        /// 初始化程序(设置ServiceLocator,读取IDataBuffer)
        /// </summary>
        public static void InitProgram()
        {
            if (!m_init)
            {
                m_init = true;

                Feng.Utils.XceedUtility.SetXceedLicense();
                log4net.Config.XmlConfigurator.Configure();
                //HibernatingRhinos.NHibernate.Profiler.Appender.NHibernateProfiler.Initialize();

                //if (Microsoft.Practices.ServiceLocation.ServiceLocator.Current == null) // throw null
                {
                    if (!SystemConfiguration.LiteMode)
                    {
                        SetSpringServiceLocator();
                    }

                    ServiceProvider.SetDefaultService<ILogger>(new log4netLogger());
                    ServiceProvider.SetDefaultService<IExceptionProcess>(new LoggerExceptionProcess());

                    ServiceProvider.SetDefaultService<Feng.NH.ISessionFactoryManager>(new Feng.NH.NHibernateSessionFactoryManager());
                    ServiceProvider.SetDefaultService<IRepositoryFactory>(new NH.RepositoryFactory());

                    IPersistentCache c = new PersistentHashtableCache();
                    ServiceProvider.SetDefaultService<ICache>(c);
                    ServiceProvider.SetDefaultService<IPersistentCache>(c);

                    Feng.DBDef def = new Feng.DBDef();
                    ServiceProvider.SetDefaultService<IDefinition>(def);

                    IDataBuffer buf = new Feng.DBDataBuffer();
                    ServiceProvider.SetDefaultService<IDataBuffer>(buf);

                    IDataBuffers bufs = new DataBuffers();
                    bufs.AddDataBuffer(new Cache());
                    bufs.AddDataBuffer(buf);
                    bufs.AddDataBuffer(def);
                    ServiceProvider.SetDefaultService<IDataBuffers>(bufs);

                    IEntityScript script = new PythonandEvalutionEngineScript();
                    ServiceProvider.SetDefaultService<IScript>(script);
                    ServiceProvider.SetDefaultService<IEntityScript>(script);

                    ServiceProvider.SetDefaultService<IMessageBox>(new EmptyMessageBox());

                    ServiceProvider.SetDefaultService<IControlCollectionFactory>(new Feng.ControlCollectionFactoryBase());

                    ServiceProvider.SetDefaultService<IManagerFactory>(new Feng.Utils.ManagerFactory());

                    IDataBuffer db = ServiceProvider.GetService<IDataBuffer>();
                    if (db != null)
                    {
                        db.LoadData();
                    }
                }
            }
        }
Esempio n. 4
0
        private void AppHelperForm_Load(object sender, EventArgs e)
        {
            //ServiceProvider.SetDefaultService<IExceptionProcess>(new WinFormExceptionProcess());

            //IPersistentCache c = new PersistentHashtableCache();
            //ServiceProvider.SetDefaultService<ICache>(c);
            //ServiceProvider.SetDefaultService<IPersistentCache>(c);

            Feng.DBDef def = new Feng.DBDef();
            ServiceProvider.SetDefaultService <IDefinition>(def);

            IDataBuffer buf = new Feng.DBDataBuffer();

            ServiceProvider.SetDefaultService <IDataBuffer>(buf);

            IDataBuffers bufs = new DataBuffers();

            bufs.AddDataBuffer(new Cache());
            bufs.AddDataBuffer(buf);
            bufs.AddDataBuffer(def);
            ServiceProvider.SetDefaultService <IDataBuffers>(bufs);

            ServiceProvider.SetDefaultService <IRepositoryFactory>(new Feng.NH.RepositoryFactory());
            ServiceProvider.SetDefaultService <Feng.NH.ISessionFactoryManager>(new Feng.NH.NHibernateSessionFactoryManager());

            //ServiceProvider.SetDefaultService<IEntityMetadataGenerator>(new NHDataEntityMetadataGenerator());

            //ServiceProvider.SetDefaultService<IMessageBox>(new Feng.Windows.Forms.MyMessageBox());

            IEntityScript script = new PythonScript();

            ServiceProvider.SetDefaultService <IScript>(script);
            ServiceProvider.SetDefaultService <IEntityScript>(script);

            IDataBuffers db = ServiceProvider.GetService <IDataBuffers>();

            if (db != null)
            {
                db.LoadData();
            }
        }