[英]Service Wrapper => Service Pattern best practices
我正在從頭開始構建企業級 web api,我有大約 12 個服務和一個實體框架回購包裝器。
基本上在重構我的 web api 之后,我意識到我正在通過 IOC 將 9 個服務傳遞到 controller。
所以我為我的所有服務創建了一個服務包裝器:
public class ServiceWrapper : IServiceWrapper
{
public ServiceWrapper(ILoggerManager loggerManager, IRepositoryWrapper repositoryWrapper, IAuditLog auditLog, IConfiguration config, ICsvImporter csvImporter, IEmailService emailService, IEmailTemplate emailTemplate, IEmailConfiguration emailConfig, IEncoreService encoreService, IUserService userService, ISQLClient sqlClient, IDocumentService documentService)
{
LoggerManager = loggerManager;
RepositoryWrapper = repositoryWrapper;
AuditLog = auditLog;
Config = config;
CsvImporter = csvImporter;
EmailService = emailService;
EmailTemplate = emailTemplate;
EncoreService = encoreService;
UserService = userService;
EmailConfiguration = emailConfig;
SqlClient = sqlClient;
DocumentService = documentService;
}
public ILoggerManager LoggerManager { get; set; }
public IRepositoryWrapper RepositoryWrapper { get; set; }
public IAuditLog AuditLog { get; set; }
public IConfiguration Config { get; set; }
public ICsvImporter CsvImporter { get; set; }
public IEmailService EmailService { get; set; }
public IEmailConfiguration EmailConfiguration { get; set; }
public IEmailTemplate EmailTemplate { get; set; }
public IEncoreService EncoreService { get; set; }
public IUserService UserService { get; set; }
public ISQLClient SqlClient { get; set; }
public IDocumentService DocumentService { get; set; }
}
我的問題是,這是最佳實踐,還是有更好的方法,我想繼續使用領域驅動架構、IOC 和服務模式。
謝謝
這在很大程度上取決於您如何在 controller 中使用這些服務。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.