Что такое модули в aspnetBoilerplate? - PullRequest
0 голосов
/ 24 апреля 2019

aspnetBoilerplate основан на доменно-управляемом дизайне шаблон проектирования.

I см. , что aspnetBoilerplate создает приложение с использованием модулей .

Я не понял, что такое модуль, я искал его определение в контексте доменного дизайна, и я обнаружил, что он служит контейнером для определенного набора классов приложения.

Значит ли это, например, что в пространстве имен c # есть модуль, потому что он может содержать много классов?

Но даже с этим определением не ясно в контексте aspnetBoilerplate, определение модуля в aspnetBoilerplate имеет такую ​​структуру:

  public class MyBlogApplicationModule : AbpModule
 {
     public override void Initialize()
     {
        IocManager.RegisterAssemblyByConvention(Assembly.GetExecutingAssembly());
     }
  }

так что это только один класс, у которого есть один метод!

Кроме того, какова связь между внедрением модели и зависимости?

Почему в IocContainer регистрируется модель как услуга?

1 Ответ

2 голосов
/ 25 апреля 2019

Модуль Abp - это просто способ организовать свой код в одном домене / слое и в то же время по-прежнему иметь возможность конфигурировать / взаимодействовать с другими модулями

например. Ваш модуль представляет собой отдельный библиотечный проект, который содержит определенную доменную логику. Для правильной инициализации вашего модуля вы можете поместить код инициализации в хуки жизненного цикла модуля

Примечание: регистр DI в хуках жизненного цикла является примером взаимодействия со службой DI (которая может быть настроена вне вашего проекта)

См https://aspnetboilerplate.com/Pages/Documents/Module-System#lifecycle-methods

Abp предоставляет удобный способ регистрации классов в соответствии с соглашением

IocManager.RegisterAssemblyByConvention (Assembly.GetExecutingAssembly ());

Примечание. Рекомендуется использовать модуль abp для каждой сборки

См https://aspnetboilerplate.com/Pages/Documents/Dependency-Injection#registering-dependencies

...