Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/279.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# 我收到消息';缺少类型映射配置或映射不受支持;_C#_Asp.net Core_.net Core_Automapper - Fatal编程技术网

C# 我收到消息';缺少类型映射配置或映射不受支持;

C# 我收到消息';缺少类型映射配置或映射不受支持;,c#,asp.net-core,.net-core,automapper,C#,Asp.net Core,.net Core,Automapper,我有两节课 public class AddressRequestModel { public Guid? UserKey { get; set; } public string AddressLine1 { get; set; } public string AddressLine2 { get; set; } public int ZipCode { get; set; } public stri

我有两节课

    public class AddressRequestModel
    {
        public Guid? UserKey { get; set; }
        public string AddressLine1 { get; set; }
        public string AddressLine2 { get; set; }
        public int ZipCode { get; set; }
        public string Location { get; set; }
        public bool IsActive { get; set; }
    }
    public class AddressRequestModelList
    {
        public List<AddressRequestModel> AddressRequestModel { get; set; }
    }
和一个配置文件映射器

 public class Profiler :Profile
    { 
        public Profiler()
        {
           CreateMap<List<AddressRequestModelList>, List<Address>>();
        }

    }
公共类探查器:配置文件
{ 
公共档案员()
{
CreateMap();
}
}
映射此控制器时,我收到消息“缺少类型映射配置或映射不受支持”

public IEnumerable<AddressDto> CreateAddress(AddressRequestModelList addressRequestModel)
        {
                var requestModel = _mapper.Map<List<Address>>(addressRequestModel);
                ...
        }
public IEnumerable CreateAddress(AddressRequestModelList addressRequestModel)
{
var requestModel=_mapper.Map(addressRequestModel);
...
}

我需要帮助。

指定集合类型之间的映射是不常见的;通常,您会映射项目类型:

public class Profiler : Profile
{ 
    public Profiler()
    {
       CreateMap<AddressRequestModel, Address>();
    }
}
公共类探查器:配置文件
{ 
公共档案员()
{
创建地图


如果必须指定到
列表的映射,可以执行以下操作:

public class Profiler : Profile
{ 
    public Profiler()
    {
       CreateMap<AddressRequestModel, Address>();

       CreateMap<AddressRequestModelList, List<Address>>()
           .ConstructUsing(
               (src, context) => context.Mapper.Map<List<Address>>(src.AddressRequestModel));
    }
}

public IEnumerable<AddressDto> CreateAddress(AddressRequestModelList addressRequestModel)
{
    var requestModel = _mapper.Map<List<Address>>(addressRequestModel);
    //...
}
公共类探查器:配置文件
{ 
公共档案员()
{
CreateMap();
CreateMap()
.施工(
(src,context)=>context.Mapper.Map(src.AddressRequestModel));
}
}
公共IEnumerable CreateAddress(AddressRequestModelList addressRequestModel)
{
var requestModel=_mapper.Map(addressRequestModel);
//...
}

发布完整的异常文本,而不仅仅是消息。使用
异常.ToString()
或在调试时单击异常弹出窗口中的
复制详细信息
,您可以轻松获得它。全文可能解释了哪些类型无法映射感谢。这很有效
public IEnumerable<AddressDto> CreateAddress(AddressRequestModelList addressRequestModel)
{
    var requestModel = _mapper.Map<List<Address>>(addressRequestModel.AddressRequestModel);
    //...
}
public class Profiler : Profile
{ 
    public Profiler()
    {
       CreateMap<AddressRequestModel, Address>();

       CreateMap<AddressRequestModelList, List<Address>>()
           .ConstructUsing(
               (src, context) => context.Mapper.Map<List<Address>>(src.AddressRequestModel));
    }
}

public IEnumerable<AddressDto> CreateAddress(AddressRequestModelList addressRequestModel)
{
    var requestModel = _mapper.Map<List<Address>>(addressRequestModel);
    //...
}