假设我有一个像这样的域对象:
public class Product
{
public int Id {get;set;}
public string Name {get;set;}
public string Description {get;set;}
public int DisplayOrder {get;set;}
//Lots of other properties
}
但是,对于我的观点,我想使用两种不同的视图模型,它们使用产品类的不同属性。
public class ProductViewModel1
{
public int Id {get;set;}
public string Name {get;set;}
//A mix of some of the other properties
}
public class ProductViewModel2
{
public int Id {get;set;}
public string Description {get;set;}
//A different mix of the other properties
}
对于Automapper:
Mapper.CreateMap<Product, ProductViewModel1>();
Mapper.CreateMap<Product, ProductViewModel2>();
问题(S): 是否有必要将所有被忽略的属性添加到CreateMap?如果不在较大的对象上进行,是否会产生很大的开销?感谢。
答案 0 :(得分:1)
它没有必要,但是当您对映射进行单元测试(或在运行时断言以确保它们是准确的)时,Ignores是成功所必需的。
Mapper.AssertConfigurationIsValid();
您可以在此处阅读有关验证AutoMapper配置是否正确的更多信息:
http://automapper.codeplex.com/wikipage?title=Configuration%20Validation