2.ABP配置
2383 ワード
一、概説
プログラムが起動する前に、モジュールのPreInitializeメソッドでいくつかの構成を行うことができます.2つに分けられます.1つ目は、フレームワークの自己構成です.2つ目は、カスタム構成です.
二、使用
2.1 ABPフレームワークの自己構成方法は以下の通りである.
2.2 ABPモジュールカスタム構成
2.2.1新しい構成クラスは次のとおりです.
2.2.2モジュールのPreInitializeメソッドにこのクラスを登録するには、次のようにします.
2.2.2拡張IModuleConfigurationsは以下の通りです.
2.2.3モジュールでは、次のように構成できます.
2.2.4プレゼンテーション呼び出しの構成は次のとおりです.
プログラムが起動する前に、モジュールのPreInitializeメソッドでいくつかの構成を行うことができます.2つに分けられます.1つ目は、フレームワークの自己構成です.2つ目は、カスタム構成です.
二、使用
2.1 ABPフレームワークの自己構成方法は以下の通りである.
public class Learn_ABPDataModule : AbpModule
{
public override void PreInitialize()
{
//
Database.SetInitializer(new CreateDatabaseIfNotExists());
//
Configuration.DefaultNameOrConnectionString = "Default";
//
Configuration.Navigation.Providers.Add();
//
Configuration.MultiTenancy.IsEnabled = false;
//
Configuration.ReplaceService(DependencyLifeStyle.Transient);
//.......
}
}
2.2 ABPモジュールカスタム構成
2.2.1新しい構成クラスは次のとおりです.
public class MyModuleConfig
{
public bool SampleConfig1 { get; set; }
public string SampleConfig2 { get; set; }
}
2.2.2モジュールのPreInitializeメソッドにこのクラスを登録するには、次のようにします.
IocManager.Register();
2.2.2拡張IModuleConfigurationsは以下の通りです.
public static class MyModuleConfigurationExtensions
{
public static MyModuleConfig MyModule(this IModuleConfigurations moduleConfigurations)
{
return moduleConfigurations.AbpConfiguration.GetOrCreate("MyModuleConfig",
() => moduleConfigurations.AbpConfiguration.IocManager.Resolve());
}
}
2.2.3モジュールでは、次のように構成できます.
public override void PreInitialize()
{
Configuration.Modules.MyModule().SampleConfig2 = "abc";
}
2.2.4プレゼンテーション呼び出しの構成は次のとおりです.
private readonly MyModuleConfig _configuration;
public TasksController(MyModuleConfig configuration)
{
_configuration = configuration;
}
public ActionResult Index()
{
if (_configuration.SampleConfig2 == "abc")
{
var data = _taskAppService.GetAllTasks();
return View(data);
}
}