protected virtual void RegisterMapperConfiguration(TSConfig config) { //bağımlılıklar var typeFinder = new WebAppTypeFinder(); //Diğer assmblyler tarafından sağlanan bağımlılıkları kaydet var mcTypes = typeFinder.FindClassesOfType <IMapperAyarları>(); var mcInstances = new List <IMapperAyarları>(); foreach (var mcType in mcTypes) { mcInstances.Add((IMapperAyarları)Activator.CreateInstance(mcType)); } //sırala mcInstances = mcInstances.AsQueryable().OrderBy(t => t.Order).ToList(); //yapılandırmayı al var configurationActions = new List <Action <IMapperConfigurationExpression> >(); foreach (var mc in mcInstances) { configurationActions.Add(mc.GetConfiguration()); } //kaydet AutoMapperAyarları.Init(configurationActions); }
protected virtual void RegisterDependencies(TSConfig config) { var builder = new ContainerBuilder(); //bağımlılıklar var typeFinder = new WebAppTypeFinder(); builder.RegisterInstance(config).As <TSConfig>().SingleInstance(); builder.RegisterInstance(this).As <IEngine>().SingleInstance(); builder.RegisterInstance(typeFinder).As <ITypeFinder>().SingleInstance(); //Diğer assmblyler tarafından sağlanan bağımlılıkları kaydet var drTypes = typeFinder.FindClassesOfType <IDependencyRegistrar>(); var drInstances = new List <IDependencyRegistrar>(); foreach (var drType in drTypes) { drInstances.Add((IDependencyRegistrar)Activator.CreateInstance(drType)); } //sırala drInstances = drInstances.AsQueryable().OrderBy(t => t.Order).ToList(); foreach (var dependencyRegistrar in drInstances) { dependencyRegistrar.Register(builder, typeFinder, config); } var container = builder.Build(); GlobalHost.DependencyResolver = new Autofac.Integration.SignalR.AutofacDependencyResolver(container); this._containerManager = new ContainerManager(container); //bağımlılık çözücü ayarla DependencyResolver.SetResolver(new AutofacDependencyResolver(container)); }
private static void refreshData() { mConfig = XConfig.GetConfig <TSConfig>(TSConst.ConfigPath_Resources, AssetLoadType.Resources, false); mDataRefreshed = true; }
public RedisÖnbellekYönetici(TSConfig config, IRedisConnectionWrapper connectionWrapper) { if (String.IsNullOrEmpty(config.RedisCachingConnectionString)) { throw new Exception("Redis connection string is empty"); } // ConnectionMultiplexer.Connect should only be called once and shared between callers this._connectionWrapper = connectionWrapper; this._db = _connectionWrapper.GetDatabase(); this._perRequestCacheManager = EngineContext.Current.Resolve <IÖnbellekYönetici>(); }
public void Initialize(TSConfig config) { //bağımlılıkları kaydet RegisterDependencies(config); //mapper ayarlarını kaydet RegisterMapperConfiguration(config); //görevleri başlat if (!config.IgnoreStartupTasks) { RunStartupTasks(); } }
public static SettingsProvider XRuntimeSetting() { return(new SettingsProvider(TSEditorConst.ProjectSetting_Node, SettingsScope.Project, new string[] { "Nekonya", "TinaX", "TS", "TypeScript", "TinaX.TS", "puerts" }) { label = "X TypeScript", guiHandler = (searchContent) => { if (!mDataRefreshed) { refreshData(); } if (mConfig == null) { GUILayout.Space(20); GUILayout.Label(I18Ns.NoConfig); if (GUILayout.Button(I18Ns.BtnCreateConfigFile, Styles.style_btn_normal, GUILayout.MaxWidth(120))) { mConfig = XConfig.CreateConfigIfNotExists <TSConfig>(TSConst.ConfigPath_Resources, AssetLoadType.Resources); refreshData(); } } else { GUILayout.Space(20); //Enable Lua mConfig.Enable = EditorGUILayout.ToggleLeft(I18Ns.EnableLua, mConfig.Enable); //Entry File EditorGUILayout.Space(); EditorGUILayout.LabelField(I18Ns.EntryFilePath); EditorGUILayout.BeginHorizontal(); mConfig.EntryJsFileLoadPath = EditorGUILayout.TextField(mConfig.EntryJsFileLoadPath); if (GUILayout.Button("Select", Styles.style_btn_normal, GUILayout.Width(55))) { var path = EditorUtility.OpenFilePanel("Select JavaScript Entry File", "Assets/", ""); if (!path.IsNullOrEmpty()) { var root_path = Directory.GetCurrentDirectory().Replace("\\", "/"); if (path.StartsWith(root_path)) { path = path.Substring(root_path.Length + 1, path.Length - root_path.Length - 1); path = path.Replace("\\", "/"); mConfig.EntryJsFileLoadPath = path; } else { Debug.LogError("Invalid Path: " + path); } } } EditorGUILayout.EndHorizontal(); //Framework Lua Folder Load Path EditorGUILayout.Space(); EditorGUILayout.LabelField(I18Ns.FrameworkInternalLuaFolderLoadPath); EditorGUILayout.BeginHorizontal(); mConfig.FrameworkInternalJsFolderLoadPath = EditorGUILayout.TextField(mConfig.FrameworkInternalJsFolderLoadPath); EditorGUILayout.EndHorizontal(); //extension EditorGUILayout.Space(); EditorGUILayout.BeginHorizontal(); EditorGUILayout.LabelField(I18Ns.LuaExtension, GUILayout.MaxWidth(120)); mConfig.JsFileExtensionName = EditorGUILayout.TextField(mConfig.JsFileExtensionName, GUILayout.MaxWidth(120)); if (mConfig.JsFileExtensionName != ".js.txt") { if (GUILayout.Button(".lua.txt", Styles.style_btn_normal, GUILayout.Width(75))) { mConfig.JsFileExtensionName = ".js.txt"; } } if (mConfig.JsFileExtensionName != ".js.bytes") { if (GUILayout.Button(".js.bytes", Styles.style_btn_normal, GUILayout.Width(75))) { mConfig.JsFileExtensionName = ".js.bytes"; } } if (mConfig.JsFileExtensionName != ".txt") { if (GUILayout.Button(".txt", Styles.style_btn_normal, GUILayout.Width(75))) { mConfig.JsFileExtensionName = ".txt"; } } EditorGUILayout.EndHorizontal(); } }, deactivateHandler = () => { if (mConfig != null) { if (!mConfig.JsFileExtensionName.IsNullOrEmpty()) { mConfig.JsFileExtensionName = mConfig.JsFileExtensionName.ToLower(); if (!mConfig.JsFileExtensionName.StartsWith(".")) { mConfig.JsFileExtensionName = "." + mConfig.JsFileExtensionName; } } EditorUtility.SetDirty(mConfig); AssetDatabase.SaveAssets(); AssetDatabase.Refresh(); } } }); }
public KullanıcıAracıYardımcısı(TSConfig ayar, HttpContextBase httpContext) { this._ayar = ayar; this._httpContext = httpContext; }
public virtual void Register(ContainerBuilder builder, ITypeFinder typeFinder, TSConfig config) { //HTTP context and other related stuff builder.Register(c => //register FakeHttpContext when HttpContext is not available HttpContext.Current != null ? (new HttpContextWrapper(HttpContext.Current) as HttpContextBase) : (new FakeHttpContext("~/") as HttpContextBase)) .As <HttpContextBase>() .InstancePerLifetimeScope(); builder.Register(c => c.Resolve <HttpContextBase>().Request) .As <HttpRequestBase>() .InstancePerLifetimeScope(); builder.Register(c => c.Resolve <HttpContextBase>().Response) .As <HttpResponseBase>() .InstancePerLifetimeScope(); builder.Register(c => c.Resolve <HttpContextBase>().Server) .As <HttpServerUtilityBase>() .InstancePerLifetimeScope(); builder.Register(c => c.Resolve <HttpContextBase>().Session) .As <HttpSessionStateBase>() .InstancePerLifetimeScope(); //web helper builder.RegisterType <WebYardımcısı>().As <IWebYardımcısı>().InstancePerLifetimeScope(); //user agent helper builder.RegisterType <KullanıcıAracıYardımcısı>().As <IKullanıcıAracıYardımcısı>().InstancePerLifetimeScope(); //controllers builder.RegisterControllers(typeFinder.GetAssemblies().ToArray()); //data layer var dataSettingsManager = new DataAyarlarıYönetici(); var dataProviderSettings = dataSettingsManager.AyarlarıYükle(); builder.Register(c => dataSettingsManager.AyarlarıYükle()).As <DataAyarları>(); builder.Register(x => new EfDataSağlayıcıYöneticisi(x.Resolve <DataAyarları>())).As <TemelVeriSağlayıcıYöneticisi>().InstancePerDependency(); builder.Register(x => x.Resolve <TemelVeriSağlayıcıYöneticisi>().DataSağlayıcıYükle()).As <IDataSağlayıcı>().InstancePerDependency(); if (dataProviderSettings != null && dataProviderSettings.Geçerli()) { var efDataProviderManager = new EfDataSağlayıcıYöneticisi(dataSettingsManager.AyarlarıYükle()); var dataProvider = efDataProviderManager.DataSağlayıcıYükle(); dataProvider.BağlantıFabrikasıBaşlat(); builder.Register <IDbContext>(c => new TSObjectContext(dataProviderSettings.DataConnectionString)).InstancePerLifetimeScope(); } else { builder.Register <IDbContext>(c => new TSObjectContext(dataSettingsManager.AyarlarıYükle().DataConnectionString)).InstancePerLifetimeScope(); } builder.RegisterGeneric(typeof(EfDepo <>)).As(typeof(IDepo <>)).InstancePerLifetimeScope(); //plugins builder.RegisterType <EklentiBulucu>().As <IEklentiBulucu>().InstancePerLifetimeScope(); //cache managers if (config.RedisCachingEnabled) { builder.RegisterType <RedisConnectionWrapper>().As <IRedisConnectionWrapper>().SingleInstance(); builder.RegisterType <RedisÖnbellekYönetici>().As <IÖnbellekYönetici>().Named <IÖnbellekYönetici>("ts_cache_static").InstancePerLifetimeScope(); } else { builder.RegisterType <BellekÖnbellekYönetici>().As <IÖnbellekYönetici>().Named <IÖnbellekYönetici>("ts_cache_static").SingleInstance(); } builder.RegisterType <İstekBaşınaÖnbellekYöneticisi>().As <IÖnbellekYönetici>().Named <IÖnbellekYönetici>("ts_cache_per_request").InstancePerLifetimeScope(); if (config.RunOnAzureWebApps) { //builder.RegisterType<AzureWebAppsMachineNameProvider>().As<IMachineNameProvider>().SingleInstance(); } else { //builder.RegisterType<DefaultMachineNameProvider>().As<IMachineNameProvider>().SingleInstance(); } //work context builder.RegisterType <WebWorkContext>().As <IWorkContext>().InstancePerLifetimeScope(); //store context builder.RegisterType <WebSiteContext>().As <ISiteContext>().InstancePerLifetimeScope(); builder.RegisterType <GenelÖznitelikServisi>().As <IGenelÖznitelikServisi>().InstancePerLifetimeScope(); builder.RegisterType <KullanıcıServisi>().As <IKullanıcıServisi>().InstancePerLifetimeScope(); builder.RegisterType <SiteServisi>().As <ISiteServisi>().InstancePerLifetimeScope(); //use static cache (between HTTP requests) builder.RegisterType <AyarlarServisi>().As <IAyarlarServisi>() .WithParameter(ResolvedParameter.ForNamed <IÖnbellekYönetici>("ts_cache_static")) .InstancePerLifetimeScope(); builder.RegisterSource(new SettingsSource()); builder.RegisterType <ResimServisi>().As <IResimServisi>().InstancePerLifetimeScope(); builder.RegisterType <VarsayılanLogger>().As <ILogger>().InstancePerLifetimeScope(); //use static cache (between HTTP requests) builder.RegisterType <WidgetServisi>().As <IWidgetServisi>().InstancePerLifetimeScope(); builder.RegisterType <SayfaHeadOluşturucu>().As <ISayfaHeadOluşturucu>().InstancePerLifetimeScope(); builder.RegisterType <TemaSağlayıcı>().As <ITemaSağlayıcı>().InstancePerLifetimeScope(); builder.RegisterType <TemaContext>().As <ITemaContext>().InstancePerLifetimeScope(); builder.RegisterType <RotaYayınlayıcı>().As <IRotaYayınlayıcı>().SingleInstance(); //builder.RegisterType<KullanıcıServisi>().As<IKullanıcıServisi>().InstancePerLifetimeScope(); builder.RegisterType <KullanıcıKayıtServisi>().As <IKullanıcıKayıtServisi>().InstancePerLifetimeScope(); builder.RegisterType <FormKimlikDoğrulamaServisi>().As <IKimlikDoğrulamaServisi>().InstancePerLifetimeScope(); builder.RegisterType <ŞifrelemeServisi>().As <IŞifrelemeServisi>().InstancePerLifetimeScope(); //Register event consumers var consumers = typeFinder.FindClassesOfType(typeof(IMüşteri <>)).ToList(); foreach (var consumer in consumers) { builder.RegisterType(consumer) .As(consumer.FindInterfaces((type, criteria) => { var isMatch = type.IsGenericType && ((Type)criteria).IsAssignableFrom(type.GetGenericTypeDefinition()); return(isMatch); }, typeof(IMüşteri <>))) .InstancePerLifetimeScope(); } builder.RegisterType <OlayYayınlayıcı>().As <IOlayYayınlayıcı>().SingleInstance(); builder.RegisterType <AbonelikServisi>().As <IAbonelikServisi>().SingleInstance(); builder.RegisterType <İzinServisi>().As <IİzinServisi>() .WithParameter(ResolvedParameter.ForNamed <IÖnbellekYönetici>("cache_static")) .InstancePerLifetimeScope(); builder.RegisterType <KategoriServisi>().As <IKategoriServisi>().InstancePerLifetimeScope(); builder.RegisterType <SayfalarServisi>().As <ISayfalarServisi>().InstancePerLifetimeScope(); builder.RegisterType <BankalarServisi>().As <IBankalarServisi>().InstancePerLifetimeScope(); builder.RegisterType <MusteriSektorServisi>().As <IMusteriSektorServisi>().InstancePerLifetimeScope(); builder.RegisterType <TedarikciSektorServisi>().As <ITedarikciSektorServisi>().InstancePerLifetimeScope(); builder.RegisterType <HariciSektorServisi>().As <IHariciSektorServisi>().InstancePerLifetimeScope(); builder.RegisterType <TeklifKalemiServisi>().As <ITeklifKalemiServisi>().InstancePerLifetimeScope(); builder.RegisterType <UnvanlarServisi>().As <IUnvanlarServisi>().InstancePerLifetimeScope(); builder.RegisterType <KonumServisi>().As <IKonumServisi>().InstancePerLifetimeScope(); builder.RegisterType <TeklifServisi>().As <ITeklifServisi>().InstancePerLifetimeScope(); builder.RegisterType <Teklif2Servisi>().As <ITeklif2Servisi>().InstancePerLifetimeScope(); builder.RegisterType <BagliTeklifOgesiServisi>().As <IBagliTeklifOgesiServisi>().InstancePerLifetimeScope(); builder.RegisterType <BagliTeklifOgesi2Servisi>().As <IBagliTeklifOgesi2Servisi>().InstancePerLifetimeScope(); builder.RegisterType <TeklifHariciServisi>().As <ITeklifHariciServisi>().InstancePerLifetimeScope(); builder.RegisterType <BagliTeklifOgesiHariciServisi>().As <IBagliTeklifOgesiHariciServisi>().InstancePerLifetimeScope(); builder.RegisterType <GorusmeRaporlariServisi>().As <IGorusmeRaporlariServisi>().InstancePerLifetimeScope(); builder.RegisterType <OdemeFormuServisi>().As <IOdemeFormuServisi>().InstancePerLifetimeScope(); builder.RegisterType <HintServisi>().As <IHintServisi>().InstancePerLifetimeScope(); builder.RegisterType <PdfServisi>().As <IPdfServisi>().InstancePerLifetimeScope(); builder.RegisterType <KatilimciServisi>().As <IKatilimciServisi>().InstancePerLifetimeScope(); builder.RegisterType <RefakatciServisi>().As <IRefakatciServisi>().InstancePerLifetimeScope(); builder.RegisterType <KayitServisi>().As <IKayitServisi>().InstancePerLifetimeScope(); builder.RegisterType <KonaklamaServisi>().As <IKonaklamaServisi>().InstancePerLifetimeScope(); builder.RegisterType <KursServisi>().As <IKursServisi>().InstancePerLifetimeScope(); builder.RegisterType <TransferServisi>().As <ITransferServisi>().InstancePerLifetimeScope(); builder.RegisterType <KongreServisi>().As <IKongreServisi>().InstancePerLifetimeScope(); builder.RegisterType <NotServisi>().As <INotServisi>().InstancePerLifetimeScope(); builder.RegisterType <DovizServisi>().As <IDovizServisi>().InstancePerLifetimeScope(); builder.RegisterType <MesajServisi>().As <IMesajServisi>().InstancePerLifetimeScope(); builder.RegisterType <MesajlarServisi>().As <IMesajlarServisi>().InstancePerLifetimeScope(); builder.RegisterType <TestServisi>().As <ITestServisi>().InstancePerLifetimeScope(); builder.RegisterType <KontenjanServisi>().As <IKontenjanServisi>().InstancePerLifetimeScope(); builder.RegisterType <CrmGorevServisi>().As <ICrmGorevServisi>().InstancePerLifetimeScope(); builder.RegisterType <CrmUnvanServisi>().As <ICrmUnvanServisi>().InstancePerLifetimeScope(); builder.RegisterType <CrmKisiServisi>().As <ICrmKisiServisi>().InstancePerLifetimeScope(); builder.RegisterType <CrmKurumServisi>().As <ICrmKurumServisi>().InstancePerLifetimeScope(); builder.RegisterType <CrmKongreServisi>().As <ICrmKongreServisi>().InstancePerLifetimeScope(); builder.RegisterType <CrmGorusmeServisi>().As <ICrmGorusmeServisi>().InstancePerLifetimeScope(); builder.RegisterType <CrmFirmaGorusmeServisi>().As <ICrmFirmaGorusmeServisi>().InstancePerLifetimeScope(); builder.RegisterType <CrmYonetimKuruluServisi>().As <ICrmYonetimKuruluServisi>().InstancePerLifetimeScope(); builder.RegisterType <CrmFirmaServisi>().As <ICrmFirmaServisi>().InstancePerLifetimeScope(); builder.RegisterType <CrmFirmaYetkilisiServisi>().As <ICrmFirmaYetkilisiServisi>().InstancePerLifetimeScope(); builder.RegisterType <BültenAbonelikServisi>().As <IBültenAbonelikServisi>().InstancePerLifetimeScope(); builder.RegisterType <ÜlkeServisi>().As <IÜlkeServisi>().InstancePerLifetimeScope(); builder.RegisterType <AçıkYetkilendirmeServisi>().As <IAçıkYetkilendirmeServisi>().InstancePerLifetimeScope(); builder.RegisterType <TarihYardımcısı>().As <ITarihYardımcısı>().InstancePerLifetimeScope(); builder.RegisterType <KullanıcıİşlemServisi>().As <IKullanıcıİşlemServisi>() .WithParameter(ResolvedParameter.ForNamed <IÖnbellekYönetici>("cache_static")) .InstancePerLifetimeScope(); builder.RegisterType <MesajTemasıServisi>().As <IMesajTemasıServisi>().InstancePerLifetimeScope(); builder.RegisterType <MesajServisi>().As <IMesajServisi>().InstancePerLifetimeScope(); builder.RegisterType <EmailHesapServisi>().As <IEmailHesapServisi>().InstancePerLifetimeScope(); builder.RegisterType <BekleyenMailServisi>().As <IBekleyenMailServisi>().InstancePerLifetimeScope(); builder.RegisterType <ForumServisi>().As <IForumServisi>().InstancePerLifetimeScope(); builder.RegisterType <UrlKayıtServisi>().As <IUrlKayıtServisi>() .WithParameter(ResolvedParameter.ForNamed <IÖnbellekYönetici>("cache_static")) .InstancePerLifetimeScope(); builder.RegisterType <AclServisi>().As <IAclServisi>() .WithParameter(ResolvedParameter.ForNamed <IÖnbellekYönetici>("cache_static")) .InstancePerLifetimeScope(); builder.RegisterType <SiteMappingServisi>().As <ISiteMappingServisi>() .WithParameter(ResolvedParameter.ForNamed <IÖnbellekYönetici>("cache_static")) .InstancePerLifetimeScope(); builder.RegisterType <SayfaTemaServisi>().As <ISayfaTemaServisi>().InstancePerLifetimeScope(); builder.RegisterType <HaberServisi>().As <IHaberServisi>().InstancePerLifetimeScope(); builder.RegisterType <BlogServisi>().As <IBlogServisi>().InstancePerLifetimeScope(); builder.RegisterType <AnketServisi>().As <IAnketServisi>().InstancePerLifetimeScope(); builder.RegisterType <TamMetinServisi>().As <ITamMetinServisi>().InstancePerLifetimeScope(); builder.RegisterType <EmailGönderici>().As <IEmailGönderici>().InstancePerLifetimeScope(); builder.RegisterType <DownloadServisi>().As <IDownloadServisi>().InstancePerLifetimeScope(); builder.RegisterType <XlsDosyaServisi>().As <IXlsDosyaServisi>().InstancePerLifetimeScope(); builder.RegisterType <XlsServisi>().As <IXlsServisi>().InstancePerLifetimeScope(); builder.RegisterType <XlsUploadServisi>().As <IXlsUploadServisi>().InstancePerLifetimeScope(); builder.RegisterType <BankaBilgileriServisi>().As <IBankaBilgileriServisi>().InstancePerLifetimeScope(); builder.RegisterType <GelirGiderHedefiServisi>().As <IGelirGiderHedefiServisi>().InstancePerLifetimeScope(); builder.RegisterType <KontenjanBilgileriServisi>().As <IKontenjanBilgileriServisi>().InstancePerLifetimeScope(); builder.RegisterType <TakvimServisi>().As <ITakvimServisi>().InstancePerLifetimeScope(); builder.RegisterType <GelirGiderTanımlamaServisi>().As <IGelirGiderTanımlamaServisi>().InstancePerLifetimeScope(); builder.RegisterType <SponsorlukKalemleriServisi>().As <ISponsorlukKalemleriServisi>().InstancePerLifetimeScope(); builder.RegisterType <HekimBranşlarıServisi>().As <IHekimBranşlarıServisi>().InstancePerLifetimeScope(); builder.RegisterType <HekimlerServisi>().As <IHekimlerServisi>().InstancePerLifetimeScope(); builder.RegisterType <TedarikciKategorileriServisi>().As <ITedarikciKategorileriServisi>().InstancePerLifetimeScope(); builder.RegisterType <YetkililerServisi>().As <IYetkililerServisi>().InstancePerLifetimeScope(); builder.RegisterType <FirmaServisi>().As <IFirmaServisi>().InstancePerLifetimeScope(); builder.RegisterType <FirmaKategorisiServisi>().As <IFirmaKategorisiServisi>().InstancePerLifetimeScope(); builder.RegisterType <KongreTedarikçiServisi>().As <IKongreTedarikçiServisi>().InstancePerLifetimeScope(); builder.RegisterType <KongreGörüşmeRaporlarıServisi>().As <IKongreGörüşmeRaporlarıServisi>().InstancePerLifetimeScope(); builder.RegisterType <SponsorlukSatışıServisi>().As <ISponsorlukSatışıServisi>().InstancePerLifetimeScope(); builder.RegisterType <KayıtTipiServisi>().As <IKayıtTipiServisi>().InstancePerLifetimeScope(); builder.RegisterType <KayıtBilgileriServisi>().As <IKayıtBilgileriServisi>().InstancePerLifetimeScope(); builder.RegisterType <KursBilgileriServisi>().As <IKursBilgileriServisi>().InstancePerLifetimeScope(); builder.RegisterType <GenelSponsorlukServisi>().As <IGenelSponsorlukServisi>().InstancePerLifetimeScope(); builder.RegisterType <TransferServisi>().As <ITransferServisi>().InstancePerLifetimeScope(); }
public virtual void Register(ContainerBuilder builder, ITypeFinder typeFinder, TSConfig config) { //installation localization service builder.RegisterType <RotaYayınlayıcı>().As <IRotaYayınlayıcı>().SingleInstance(); builder.RegisterType <SiteBilgiAyarları>().As <IAyarlar>(); builder.RegisterType <ResimServisi>().As <IResimServisi>(); builder.RegisterType <KullanıcıModelFabrikası>().As <IKullanıcıModelFabrikası>() .InstancePerLifetimeScope(); builder.RegisterType <YetkiliModelFabrikası>().As <IYetkiliModelFabrikası>() .InstancePerLifetimeScope(); builder.RegisterLifetimeHubManager(); builder.RegisterHubs(Assembly.GetExecutingAssembly()); builder.RegisterType <KatılımcıHub>().ExternallyOwned(); }
public async Task <XException> Start() { if (m_Inited) { return(null); } m_Config = XConfig.GetConfig <TSConfig>(TSConst.ConfigPath_Resources); if (m_Config == null) { return(new XException($"[{TSConst.ServiceName}] Connot found config file.")); } if (!m_Config.Enable) { return(null); } //框架内部Js文件加载路径 m_Internal_Js_Folder_Load_Path = m_Config.FrameworkInternalJsFolderLoadPath; if (!m_Internal_Js_Folder_Load_Path.IsNullOrEmpty()) { if (m_Internal_Js_Folder_Load_Path.EndsWith("/")) { m_Internal_Js_Folder_Load_Path = m_Internal_Js_Folder_Load_Path.Substring(0, m_Internal_Js_Folder_Load_Path.Length - 1); } m_Internal_Js_Folder_Load_Path_withSlash = m_Internal_Js_Folder_Load_Path + "/"; } //Js文件加载名称 m_JsExtension = m_Config.JsFileExtensionName; if (!m_JsExtension.StartsWith(".")) { m_JsExtension = "." + m_JsExtension; } if (m_Assets == null) { return(new XException($"[{TSConst.ServiceName}]" + (m_Core.IsCmnHans() ? "没有任何服务实现了Framework中的内置的资产加载接口" : "No service implements the built-in asset loading interface in Framework"))); } //初始化Js的运行环境 m_JsEnv = new JsEnv(new XTSLoader(m_Assets, c_InternalJsSign, c_Internal_Js_Extension, m_Internal_Js_Folder_Load_Path, m_JsExtension)); //try //{ // await InitInternalEntry(); //} //catch(XException e) //{ // return e; //} //准备好入口文件 if (!m_Config.EntryJsFileLoadPath.IsNullOrEmpty()) { try { TextAsset entry_ta = await m_Assets.LoadAsync <TextAsset>(m_Config.EntryJsFileLoadPath); m_EntryCodeContent = entry_ta.text; //m_EntryFunc = m_JsEnv.LoadString<LuaFunction>(entry_ta.bytes, m_Config.EntryLuaFileLoadPath); m_Assets.Release(entry_ta); } catch (XException e) { return(e); } } if (m_UpdateTicket != null) { m_UpdateTicket.Unregister(); } m_UpdateTicket = TimeMachine.RegisterUpdate(OnUpdate); m_Inited = true; return(null); }
public RedisConnectionWrapper(TSConfig config) { this._config = config; this._connectionString = new Lazy <string>(GetConnectionString); this._redisLockFactory = CreateRedisLockFactory(); }