DomainService未在AppService中注册

问题描述 投票:1回答:1

我正在尝试将DomainService合并到我的应用程序中,并尝试按照下面的代码所示进行操作。这是管理器的示例代码:

namespace FlexSped.DefaultColors
{
    public class DefaultColorManager : FlexSpedDomainServiceBase, IDefaultColorsManager
    {
        private readonly IRepository<DefaultColor> _defaultColorRepository;

        public DefaultColorManager(IRepository<DefaultColor> defColorRep)
        {
            _defaultColorRepository = defColorRep;
        }

        public async Task Create(DefaultColor input)
        {
            await _defaultColorRepository.InsertAsync(input);
        }

        public Task Update(int id)
        {
            throw new NotImplementedException();
        }
    }
}

这是应用程序服务:

namespace FlexSped.DefaultColors
{
    [AbpAuthorize(AppPermissions.Pages_Administration_DefaultColors)]
    public class DefaultColorsAppService : FlexSpedAppServiceBase, IDefaultColorsAppService
    {
        private readonly IDefaultColorsManager _defaultColorManager;
        private readonly IRepository<DefaultColor> _defaultColorRepository;
        //private readonly IIocResolver _iocResolver;

        public DefaultColorsAppService(IRepository<DefaultColor> defaultColorRepository, IDefaultColorsManager defColManager)
        {
            _defaultColorRepository = defaultColorRepository;
            _defaultColorManager = defColManager;
            //_iocResolver = iocResolver;
        }

        public async Task CreateOrEdit(CreateOrEditDefaultColorDto input)
        {
            if (input.Id == null)
            {
                await Create(input);
            }
            else
            {
                await Update(input);
            }
        }

        [AbpAuthorize(AppPermissions.Pages_Administration_DefaultColors_Create)]
        private async Task Create(CreateOrEditDefaultColorDto input)
        {
            DefaultColor dt = ObjectMapper.Map<DefaultColor>(input);
            await _defaultColorManager.Create(dt);
        }
    }
}

所有这些都会产生此错误:

'FlexSped.DefaultColors.DefaultColorsAppService' is waiting for the following dependencies:
- Service 'FlexSped.DefaultColors.IDefaultColorsManager' which was not registered.

不确定是什么问题。我遵循惯例here

aspnetboilerplate
1个回答
0
投票

ABPboiler正在按名称注册服务依赖项,因此您应该将实现与定义匹配。您的情况:

IDefaultColors.IDefaultColorsManager应该是IDefaultColors.IDefault Color Manager反之亦然,DefaultColorManager应该是Default Colors Manager。

© www.soinside.com 2019 - 2024. All rights reserved.