Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Unity类型IRegisterAutoMapper没有可访问的构造函数_C#_Unity Container - Fatal编程技术网

C# Unity类型IRegisterAutoMapper没有可访问的构造函数

C# Unity类型IRegisterAutoMapper没有可访问的构造函数,c#,unity-container,C#,Unity Container,您好,我正在使用Unity作为IoC容器,并尝试使用ServiceLocator获取对象的实例 这是我试图执行的代码: ServiceLocator.Current.GetInstance<IAutoMapperRegisterFactory>() 以前我的AutomapperRegisterFactory是这样的: public class AutoMapperRegisterFactory : IAutoMapperRegisterFactory { private r

您好,我正在使用Unity作为IoC容器,并尝试使用ServiceLocator获取对象的实例

这是我试图执行的代码:

ServiceLocator.Current.GetInstance<IAutoMapperRegisterFactory>()
以前我的AutomapperRegisterFactory是这样的:

public class AutoMapperRegisterFactory : IAutoMapperRegisterFactory
{
    private readonly IRegisterAutoMapper m_RegisterAutoMapper;

    public AutoMapperRegisterFactory(IRegisterAutoMapper registerAutoMapper)
    {
        m_RegisterAutoMapper = registerAutoMapper;
    }

    public IEnumerable<IRegisterAutoMapper> GetRegisteredAutoMappers()
    {
        var registeredAutoMappers = new List<IRegisterAutoMapper> { m_RegisterAutoMapper };
        return registeredAutoMappers;
    }
}
public class AutoMapperRegisterFactory : IAutoMapperRegisterFactory
{
    public IEnumerable<IRegisterAutoMapper> GetRegisteredAutoMappers()
    {
        var registeredAutoMappers = new List<IRegisterAutoMapper> { new RegisterAutoMapper(new RegisterMappings(), new RegisterCustomMappings()) };
        return registeredAutoMappers;
    }
}
公共类AutoMapperRegisterFactory:IAutoMapperRegisterFactory
{
public IEnumerable GetRegisteredAuthomappers()
{
var registeredAutoMappers=新列表{new registereautomapper(new RegisterMappings(),new registercustomappings())};
返回registeredAutoMappers;
}
}

一切正常。我做错了什么?我该如何纠正它?

组件
AutoMapperRegisterFactory
requure as dependency
IRegisterAutoMapper
组件。
IRegisterAutoMapper
RegisterAutoMapper
类型实现,但是
RegisterAutoMapper
类型的构造函数需要两个参数:
RegisterMappings
RegisterCustomMappings
,因此必须提供它们

例如:

container.RegisterType<..., RegisterMappings>();
container.RegisterType<..., RegisterCustomMappings>();
container.RegisterType();
container.RegisterType();
public class AutoMapperRegisterFactory : IAutoMapperRegisterFactory
{
    public IEnumerable<IRegisterAutoMapper> GetRegisteredAutoMappers()
    {
        var registeredAutoMappers = new List<IRegisterAutoMapper> { new RegisterAutoMapper(new RegisterMappings(), new RegisterCustomMappings()) };
        return registeredAutoMappers;
    }
}
container.RegisterType<..., RegisterMappings>();
container.RegisterType<..., RegisterCustomMappings>();