ShwasherCoreModule.cs 3.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. using System.Reflection;
  2. using Abp.Localization;
  3. using Abp.Localization.Dictionaries;
  4. using Abp.Localization.Dictionaries.Xml;
  5. using Abp.Modules;
  6. using ShwasherSys.Authorization.Users;
  7. using ShwasherSys.BaseSysInfo;
  8. using IwbZero;
  9. using IwbZero.Authorization.Permissions;
  10. using IwbZero.Navigation;
  11. using IwbZero.Setting;
  12. using ShwasherSys.Authorization;
  13. using Abp.Configuration.Startup;
  14. using Abp.MailKit;
  15. using ShwasherSys.Emailing;
  16. namespace ShwasherSys
  17. {
  18. [DependsOn(typeof(IwbZeroModule))]
  19. public class ShwasherCoreModule : AbpModule
  20. {
  21. public override void PreInitialize()
  22. {
  23. //Configuration.Settings.Providers.Add<IwbSettingProvider>();
  24. //替换IAbpSession的实现类
  25. //Configuration.ReplaceService<IAbpSession, IwbSession>(DependencyLifeStyle.Transient);
  26. Configuration.Settings.Providers.Add<AppSettingProvider>();
  27. //Add/remove languages for your application
  28. foreach (var languageInfo in Configuration.Localization.Languages)
  29. {
  30. Configuration.Localization.Languages.Remove(languageInfo);
  31. }
  32. Configuration.Localization.Languages.Add(new LanguageInfo("zh-CN", "简体中文", "famfamfam-flag-cn", true));
  33. //Configuration.Localization.Languages.Add(new LanguageInfo("en", "English", "famfamfam-flag-england"));
  34. Configuration.ReplaceService<IMailKitSmtpBuilder, IwbZeroTemplateMailKitSmtpBuilder>();
  35. //Add/remove localization sources here
  36. Configuration.Localization.Sources.Add(
  37. new DictionaryBasedLocalizationSource(
  38. ShwasherConsts.LocalizationSourceName,
  39. new XmlEmbeddedFileLocalizationDictionaryProvider(
  40. Assembly.GetExecutingAssembly(),
  41. "ShwasherSys.Localization.Language"
  42. )
  43. )
  44. );
  45. }
  46. public override void Initialize()
  47. {
  48. IocManager.RegisterAssemblyByConvention(Assembly.GetExecutingAssembly());
  49. }
  50. public override void PostInitialize()
  51. {
  52. //var httpConfiguration = IocManager.Resolve<IAbpWebApiConfiguration>().HttpConfiguration;
  53. ////httpConfiguration.Services.Replace(typeof(AbpApiAuthorizeFilter), IocManager.Resolve<IwbApiAuthorizeFilter>());
  54. //httpConfiguration.Filters.Remove(IocManager.Resolve<AbpApiAuthorizeFilter>());
  55. //httpConfiguration.Filters.Add(IocManager.Resolve<IwbApiAuthorizeFilter>());
  56. //GlobalFilters.Filters.Remove(IocManager.Resolve<AbpMvcAuthorizeFilter>());
  57. //GlobalFilters.Filters.Add(IocManager.Resolve<IwbMvcAuthorizeFilter>());
  58. IocManager.Register<IIwbPermissionManager, IwbPermissionManager<SysFunction, SysUser>>();
  59. IocManager.Register<IIwbNavigationManager, IwbNavigationManager<SysFunction, SysUser>>();
  60. IocManager.Register<IIwbSettingDefinitionManager, IwbSettingDefinitionManager<SysSetting, SysUser>>();
  61. //IocManager.Register<IPermissionChecker, IwbYuePermissionChecker>();
  62. //IocManager.Register<IPermissionChecker,IwbPermissionChecker<SysRole, SysUser>>();
  63. IocManager.Resolve<IwbPermissionManager<SysFunction, SysUser>>().Initialize();
  64. IocManager.Resolve<IwbSettingDefinitionManager<SysSetting, SysUser>>().Initialize();
  65. }
  66. }
  67. }