我有以下情况。我将类的列表映射到另一个名称空间中的相同类的列表。在原始列表中,某些对象可能为null,某些对象可能已正确初始化。 映射时,我收到此列表的AutoMapper.AutoMapperMappingException。 每当我使用全部为null的对象或全部初始化的对象填充列表时,映射都可以正常工作。
我用来重现此问题的示例程序:
using System.Collections.Generic;
using AutoMapper;
using AutomapperTest.Namespace1;
namespace AutomapperTest.Namespace1
{
public class Identifier
{
public string Id { get; set; }
}
}
namespace AutomapperTest.Namespace2
{
public class Identifier
{
public string Id { get; set; }
}
}
namespace AutomapperTest
{
class Program
{
static void Main(string[] args)
{
Mapper.CreateMap<Identifier, Namespace2.Identifier>();
Mapper.AssertConfigurationIsValid();
var identifierList = new List<Identifier>
{
null,
new Identifier()
};
var mappedList = Mapper.Map<List<Namespace2.Identifier>>(identifierList);
}
}
}
有没有人知道使这种映射成功的解决方案?我期待一个包含2个Namespace2.Identifier对象的列表,其中一个对象为null,与源集合完全相同。